diff mbox series

[FFmpeg-devel] avformat/framecrcenc: compute the checksum for side data

Message ID 20240427003623.118199-1-michael@niedermayer.cc
State New
Headers show
Series [FFmpeg-devel] avformat/framecrcenc: compute the checksum for side data | expand

Checks

Context Check Description
yinshiyou/configure_loongarch64 warning Failed to apply patch

Commit Message

Michael Niedermayer April 27, 2024, 12:36 a.m. UTC
This allows detecting issues in side data related code, same as what
framecrc does for before already for packet data itself.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavformat/framecrcenc.c                   |   76 +-
 tests/ref/fate/autorotate                   |    2 +-
 tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
 tests/ref/fate/ffmpeg-bsf-input             |   10 +-
 tests/ref/fate/force_key_frames-source      |  784 ++++++------
 tests/ref/fate/force_key_frames-source-drop |   34 +-
 tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
 tests/ref/fate/gapless-mp3                  |    6 +-
 tests/ref/fate/h264_redundant_pps-side_data |    2 +-
 tests/ref/fate/iamf-5_1-copy                |  208 ++--
 tests/ref/fate/iamf-5_1-demux               |  208 ++--
 tests/ref/fate/id3v2-priv-remux             |    2 +-
 tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
 tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
 tests/ref/fate/matroska-opus-remux          |    2 +-
 tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
 tests/ref/fate/mov-cover-image              |    2 +-
 tests/ref/fate/segment-mp4-to-ts            |  250 ++--
 tests/ref/fate/shortest                     |  100 +-
 tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
 tests/ref/fate/webm-webvtt-remux            |   24 +-
 21 files changed, 1513 insertions(+), 1443 deletions(-)

Comments

Andreas Rheinhardt April 27, 2024, 10:44 a.m. UTC | #1
Michael Niedermayer:
> This allows detecting issues in side data related code, same as what
> framecrc does for before already for packet data itself.
> 
> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> ---
>  libavformat/framecrcenc.c                   |   76 +-
>  tests/ref/fate/autorotate                   |    2 +-
>  tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
>  tests/ref/fate/ffmpeg-bsf-input             |   10 +-
>  tests/ref/fate/force_key_frames-source      |  784 ++++++------
>  tests/ref/fate/force_key_frames-source-drop |   34 +-
>  tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
>  tests/ref/fate/gapless-mp3                  |    6 +-
>  tests/ref/fate/h264_redundant_pps-side_data |    2 +-
>  tests/ref/fate/iamf-5_1-copy                |  208 ++--
>  tests/ref/fate/iamf-5_1-demux               |  208 ++--
>  tests/ref/fate/id3v2-priv-remux             |    2 +-
>  tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
>  tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
>  tests/ref/fate/matroska-opus-remux          |    2 +-
>  tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
>  tests/ref/fate/mov-cover-image              |    2 +-
>  tests/ref/fate/segment-mp4-to-ts            |  250 ++--
>  tests/ref/fate/shortest                     |  100 +-
>  tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
>  tests/ref/fate/webm-webvtt-remux            |   24 +-
>  21 files changed, 1513 insertions(+), 1443 deletions(-)
> 
> diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
> index ce306a6c498..e71bfbd8777 100644
> --- a/libavformat/framecrcenc.c
> +++ b/libavformat/framecrcenc.c
> @@ -21,8 +21,10 @@
>  
>  #include <inttypes.h>
>  
> +#include "config.h"
>  #include "libavutil/adler32.h"
>  #include "libavutil/avstring.h"
> +#include "libavutil/intreadwrite.h"
>  
>  #include "libavcodec/codec_id.h"
>  #include "libavcodec/codec_par.h"
> @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
>      return ff_framehash_write_header(s);
>  }
>  
> +static av_unused void inline bswap(char *buf, int offset, int size)
> +{
> +    if (size == 8) {
> +        uint64_t val = AV_RN64(buf + offset);
> +        AV_WN64(buf + offset, av_bswap64(val));
> +    } else if (size == 4) {
> +        uint32_t val = AV_RN32(buf + offset);
> +        AV_WN32(buf + offset, av_bswap32(val));
> +    }
> +}
> +
>  static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>  {
>      uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
> @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>      if (pkt->flags != AV_PKT_FLAG_KEY)
>          av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
>      if (pkt->side_data_elems) {
> +        int i;

This change is wrong.

>          av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
>  
> -        for (int i = 0; i < pkt->side_data_elems; i++) {
> -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
> -                        pkt->side_data[i].size);
> +        for (i=0; i<pkt->side_data_elems; i++) {
> +            const AVPacketSideData *const sd = &pkt->side_data[i];
> +            const uint8_t *data = sd->data;
> +            uint32_t side_data_crc = 0;
> +
> +            switch (sd->type) {
> +#if HAVE_BIGENDIAN
> +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
> +                                        sizeof(AVProducerReferenceTime))];
> +            case AV_PKT_DATA_PALETTE:
> +            case AV_PKT_DATA_REPLAYGAIN:
> +            case AV_PKT_DATA_DISPLAYMATRIX:
> +            case AV_PKT_DATA_STEREO3D:
> +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
> +            case AV_PKT_DATA_FALLBACK_TRACK:
> +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
> +            case AV_PKT_DATA_SPHERICAL:
> +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
> +            case AV_PKT_DATA_S12M_TIMECODE:
> +                for (size_t j = 0; j < sd->size / 4; j++) {
> +                    uint8_t buf[4];
> +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
> +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
> +                }
> +                break;
> +            case AV_PKT_DATA_CPB_PROPERTIES:
> +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
> +                if (sd->size == sizeof(AVCPBProperties)) {
> +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
> +                    data = bswap_buf;
> +                    BSWAP(AVCPBProperties, max_bitrate);
> +                    BSWAP(AVCPBProperties, min_bitrate);
> +                    BSWAP(AVCPBProperties, avg_bitrate);
> +                    BSWAP(AVCPBProperties, buffer_size);
> +                    BSWAP(AVCPBProperties, vbv_delay);
> +                }
> +                goto pod;
> +            case AV_PKT_DATA_PRFT:
> +                if (sd->size == sizeof(AVProducerReferenceTime)) {
> +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
> +                    data = bswap_buf;
> +                    BSWAP(AVProducerReferenceTime, wallclock);
> +                    BSWAP(AVProducerReferenceTime, flags);
> +                }
> +                goto pod;
> +            pod:
> +#endif
> +
> +            default:
> +                side_data_crc = av_adler32_update(0, data, sd->size);
> +                break;
> +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
> +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
> +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
> +                side_data_crc = 0;
> +            }
> +
> +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
> +                        pkt->side_data[i].size, side_data_crc);
>          }
>      }
>      av_strlcatf(buf, sizeof(buf), "\n");

You should mention that you are basically reverting
c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.

- Andreas
Michael Niedermayer April 27, 2024, 12:07 p.m. UTC | #2
On Sat, Apr 27, 2024 at 12:44:18PM +0200, Andreas Rheinhardt wrote:
> Michael Niedermayer:
> > This allows detecting issues in side data related code, same as what
> > framecrc does for before already for packet data itself.
> > 
> > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > ---
> >  libavformat/framecrcenc.c                   |   76 +-
> >  tests/ref/fate/autorotate                   |    2 +-
> >  tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
> >  tests/ref/fate/ffmpeg-bsf-input             |   10 +-
> >  tests/ref/fate/force_key_frames-source      |  784 ++++++------
> >  tests/ref/fate/force_key_frames-source-drop |   34 +-
> >  tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
> >  tests/ref/fate/gapless-mp3                  |    6 +-
> >  tests/ref/fate/h264_redundant_pps-side_data |    2 +-
> >  tests/ref/fate/iamf-5_1-copy                |  208 ++--
> >  tests/ref/fate/iamf-5_1-demux               |  208 ++--
> >  tests/ref/fate/id3v2-priv-remux             |    2 +-
> >  tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
> >  tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
> >  tests/ref/fate/matroska-opus-remux          |    2 +-
> >  tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
> >  tests/ref/fate/mov-cover-image              |    2 +-
> >  tests/ref/fate/segment-mp4-to-ts            |  250 ++--
> >  tests/ref/fate/shortest                     |  100 +-
> >  tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
> >  tests/ref/fate/webm-webvtt-remux            |   24 +-
> >  21 files changed, 1513 insertions(+), 1443 deletions(-)
> > 
> > diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
> > index ce306a6c498..e71bfbd8777 100644
> > --- a/libavformat/framecrcenc.c
> > +++ b/libavformat/framecrcenc.c
> > @@ -21,8 +21,10 @@
> >  
> >  #include <inttypes.h>
> >  
> > +#include "config.h"
> >  #include "libavutil/adler32.h"
> >  #include "libavutil/avstring.h"
> > +#include "libavutil/intreadwrite.h"
> >  
> >  #include "libavcodec/codec_id.h"
> >  #include "libavcodec/codec_par.h"
> > @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
> >      return ff_framehash_write_header(s);
> >  }
> >  
> > +static av_unused void inline bswap(char *buf, int offset, int size)
> > +{
> > +    if (size == 8) {
> > +        uint64_t val = AV_RN64(buf + offset);
> > +        AV_WN64(buf + offset, av_bswap64(val));
> > +    } else if (size == 4) {
> > +        uint32_t val = AV_RN32(buf + offset);
> > +        AV_WN32(buf + offset, av_bswap32(val));
> > +    }
> > +}
> > +
> >  static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
> >  {
> >      uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
> > @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
> >      if (pkt->flags != AV_PKT_FLAG_KEY)
> >          av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
> >      if (pkt->side_data_elems) {
> > +        int i;
> 
> This change is wrong.
> 
> >          av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
> >  
> > -        for (int i = 0; i < pkt->side_data_elems; i++) {
> > -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
> > -                        pkt->side_data[i].size);
> > +        for (i=0; i<pkt->side_data_elems; i++) {
> > +            const AVPacketSideData *const sd = &pkt->side_data[i];
> > +            const uint8_t *data = sd->data;
> > +            uint32_t side_data_crc = 0;
> > +
> > +            switch (sd->type) {
> > +#if HAVE_BIGENDIAN
> > +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
> > +                                        sizeof(AVProducerReferenceTime))];
> > +            case AV_PKT_DATA_PALETTE:
> > +            case AV_PKT_DATA_REPLAYGAIN:
> > +            case AV_PKT_DATA_DISPLAYMATRIX:
> > +            case AV_PKT_DATA_STEREO3D:
> > +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
> > +            case AV_PKT_DATA_FALLBACK_TRACK:
> > +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
> > +            case AV_PKT_DATA_SPHERICAL:
> > +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
> > +            case AV_PKT_DATA_S12M_TIMECODE:
> > +                for (size_t j = 0; j < sd->size / 4; j++) {
> > +                    uint8_t buf[4];
> > +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
> > +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
> > +                }
> > +                break;
> > +            case AV_PKT_DATA_CPB_PROPERTIES:
> > +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
> > +                if (sd->size == sizeof(AVCPBProperties)) {
> > +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
> > +                    data = bswap_buf;
> > +                    BSWAP(AVCPBProperties, max_bitrate);
> > +                    BSWAP(AVCPBProperties, min_bitrate);
> > +                    BSWAP(AVCPBProperties, avg_bitrate);
> > +                    BSWAP(AVCPBProperties, buffer_size);
> > +                    BSWAP(AVCPBProperties, vbv_delay);
> > +                }
> > +                goto pod;
> > +            case AV_PKT_DATA_PRFT:
> > +                if (sd->size == sizeof(AVProducerReferenceTime)) {
> > +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
> > +                    data = bswap_buf;
> > +                    BSWAP(AVProducerReferenceTime, wallclock);
> > +                    BSWAP(AVProducerReferenceTime, flags);
> > +                }
> > +                goto pod;
> > +            pod:
> > +#endif
> > +
> > +            default:
> > +                side_data_crc = av_adler32_update(0, data, sd->size);
> > +                break;
> > +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
> > +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
> > +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
> > +                side_data_crc = 0;
> > +            }
> > +
> > +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
> > +                        pkt->side_data[i].size, side_data_crc);
> >          }
> >      }
> >      av_strlcatf(buf, sizeof(buf), "\n");
> 
> You should mention that you are basically reverting
> c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.

right, i didnt keep track of this as i just needed this locally
for testing to be possible and at the time didnt expect to
submit this to ffmpeg. But now 3 years later, it seems to make
sense to see if people want this maybe.

To test side data, it IS needed to well test side data.
But if people still want to not test side data in FFmpeg git.
I can continue to be the only one testing side data :)

ill repost it with a reference to c6ae560a18d67b9ddaa25a0338b7fb55e3312e57
and without the int i change, i did miss that.

thx

[...]
James Almer April 28, 2024, 3:43 a.m. UTC | #3
On 4/27/2024 9:07 AM, Michael Niedermayer wrote:
> On Sat, Apr 27, 2024 at 12:44:18PM +0200, Andreas Rheinhardt wrote:
>> Michael Niedermayer:
>>> This allows detecting issues in side data related code, same as what
>>> framecrc does for before already for packet data itself.
>>>
>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>> ---
>>>   libavformat/framecrcenc.c                   |   76 +-
>>>   tests/ref/fate/autorotate                   |    2 +-
>>>   tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
>>>   tests/ref/fate/ffmpeg-bsf-input             |   10 +-
>>>   tests/ref/fate/force_key_frames-source      |  784 ++++++------
>>>   tests/ref/fate/force_key_frames-source-drop |   34 +-
>>>   tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
>>>   tests/ref/fate/gapless-mp3                  |    6 +-
>>>   tests/ref/fate/h264_redundant_pps-side_data |    2 +-
>>>   tests/ref/fate/iamf-5_1-copy                |  208 ++--
>>>   tests/ref/fate/iamf-5_1-demux               |  208 ++--
>>>   tests/ref/fate/id3v2-priv-remux             |    2 +-
>>>   tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
>>>   tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
>>>   tests/ref/fate/matroska-opus-remux          |    2 +-
>>>   tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
>>>   tests/ref/fate/mov-cover-image              |    2 +-
>>>   tests/ref/fate/segment-mp4-to-ts            |  250 ++--
>>>   tests/ref/fate/shortest                     |  100 +-
>>>   tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
>>>   tests/ref/fate/webm-webvtt-remux            |   24 +-
>>>   21 files changed, 1513 insertions(+), 1443 deletions(-)
>>>
>>> diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
>>> index ce306a6c498..e71bfbd8777 100644
>>> --- a/libavformat/framecrcenc.c
>>> +++ b/libavformat/framecrcenc.c
>>> @@ -21,8 +21,10 @@
>>>   
>>>   #include <inttypes.h>
>>>   
>>> +#include "config.h"
>>>   #include "libavutil/adler32.h"
>>>   #include "libavutil/avstring.h"
>>> +#include "libavutil/intreadwrite.h"
>>>   
>>>   #include "libavcodec/codec_id.h"
>>>   #include "libavcodec/codec_par.h"
>>> @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
>>>       return ff_framehash_write_header(s);
>>>   }
>>>   
>>> +static av_unused void inline bswap(char *buf, int offset, int size)
>>> +{
>>> +    if (size == 8) {
>>> +        uint64_t val = AV_RN64(buf + offset);
>>> +        AV_WN64(buf + offset, av_bswap64(val));
>>> +    } else if (size == 4) {
>>> +        uint32_t val = AV_RN32(buf + offset);
>>> +        AV_WN32(buf + offset, av_bswap32(val));
>>> +    }
>>> +}
>>> +
>>>   static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>>>   {
>>>       uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
>>> @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>>>       if (pkt->flags != AV_PKT_FLAG_KEY)
>>>           av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
>>>       if (pkt->side_data_elems) {
>>> +        int i;
>>
>> This change is wrong.
>>
>>>           av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
>>>   
>>> -        for (int i = 0; i < pkt->side_data_elems; i++) {
>>> -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
>>> -                        pkt->side_data[i].size);
>>> +        for (i=0; i<pkt->side_data_elems; i++) {
>>> +            const AVPacketSideData *const sd = &pkt->side_data[i];
>>> +            const uint8_t *data = sd->data;
>>> +            uint32_t side_data_crc = 0;
>>> +
>>> +            switch (sd->type) {
>>> +#if HAVE_BIGENDIAN
>>> +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
>>> +                                        sizeof(AVProducerReferenceTime))];
>>> +            case AV_PKT_DATA_PALETTE:
>>> +            case AV_PKT_DATA_REPLAYGAIN:
>>> +            case AV_PKT_DATA_DISPLAYMATRIX:
>>> +            case AV_PKT_DATA_STEREO3D:
>>> +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
>>> +            case AV_PKT_DATA_FALLBACK_TRACK:
>>> +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
>>> +            case AV_PKT_DATA_SPHERICAL:
>>> +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
>>> +            case AV_PKT_DATA_S12M_TIMECODE:
>>> +                for (size_t j = 0; j < sd->size / 4; j++) {
>>> +                    uint8_t buf[4];
>>> +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
>>> +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
>>> +                }
>>> +                break;
>>> +            case AV_PKT_DATA_CPB_PROPERTIES:
>>> +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
>>> +                if (sd->size == sizeof(AVCPBProperties)) {
>>> +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
>>> +                    data = bswap_buf;
>>> +                    BSWAP(AVCPBProperties, max_bitrate);
>>> +                    BSWAP(AVCPBProperties, min_bitrate);
>>> +                    BSWAP(AVCPBProperties, avg_bitrate);
>>> +                    BSWAP(AVCPBProperties, buffer_size);
>>> +                    BSWAP(AVCPBProperties, vbv_delay);
>>> +                }
>>> +                goto pod;
>>> +            case AV_PKT_DATA_PRFT:
>>> +                if (sd->size == sizeof(AVProducerReferenceTime)) {
>>> +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
>>> +                    data = bswap_buf;
>>> +                    BSWAP(AVProducerReferenceTime, wallclock);
>>> +                    BSWAP(AVProducerReferenceTime, flags);
>>> +                }
>>> +                goto pod;
>>> +            pod:
>>> +#endif
>>> +
>>> +            default:
>>> +                side_data_crc = av_adler32_update(0, data, sd->size);
>>> +                break;
>>> +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
>>> +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
>>> +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
>>> +                side_data_crc = 0;
>>> +            }
>>> +
>>> +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
>>> +                        pkt->side_data[i].size, side_data_crc);
>>>           }
>>>       }
>>>       av_strlcatf(buf, sizeof(buf), "\n");
>>
>> You should mention that you are basically reverting
>> c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.
> 
> right, i didnt keep track of this as i just needed this locally
> for testing to be possible and at the time didnt expect to
> submit this to ffmpeg. But now 3 years later, it seems to make
> sense to see if people want this maybe.
> 
> To test side data, it IS needed to well test side data.
> But if people still want to not test side data in FFmpeg git.
> I can continue to be the only one testing side data :)
> 
> ill repost it with a reference to c6ae560a18d67b9ddaa25a0338b7fb55e3312e57
> and without the int i change, i did miss that.

I'm not against adding checksum for side data if it can be ensured it 
will be the same on both little and big endian, 32bit and 64bit, but I'm 
against skipping specific types like you did above with the IAMF ones. 
Or rather, against printing 0 for them, which is misleading. I'd rather 
not print anything for them after the size.

> 
> thx
> 
> [...]
> 
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
Michael Niedermayer April 30, 2024, 11:25 p.m. UTC | #4
On Sun, Apr 28, 2024 at 12:43:50AM -0300, James Almer wrote:
> On 4/27/2024 9:07 AM, Michael Niedermayer wrote:
> > On Sat, Apr 27, 2024 at 12:44:18PM +0200, Andreas Rheinhardt wrote:
> > > Michael Niedermayer:
> > > > This allows detecting issues in side data related code, same as what
> > > > framecrc does for before already for packet data itself.
> > > > 
> > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > ---
> > > >   libavformat/framecrcenc.c                   |   76 +-
> > > >   tests/ref/fate/autorotate                   |    2 +-
> > > >   tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
> > > >   tests/ref/fate/ffmpeg-bsf-input             |   10 +-
> > > >   tests/ref/fate/force_key_frames-source      |  784 ++++++------
> > > >   tests/ref/fate/force_key_frames-source-drop |   34 +-
> > > >   tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
> > > >   tests/ref/fate/gapless-mp3                  |    6 +-
> > > >   tests/ref/fate/h264_redundant_pps-side_data |    2 +-
> > > >   tests/ref/fate/iamf-5_1-copy                |  208 ++--
> > > >   tests/ref/fate/iamf-5_1-demux               |  208 ++--
> > > >   tests/ref/fate/id3v2-priv-remux             |    2 +-
> > > >   tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
> > > >   tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
> > > >   tests/ref/fate/matroska-opus-remux          |    2 +-
> > > >   tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
> > > >   tests/ref/fate/mov-cover-image              |    2 +-
> > > >   tests/ref/fate/segment-mp4-to-ts            |  250 ++--
> > > >   tests/ref/fate/shortest                     |  100 +-
> > > >   tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
> > > >   tests/ref/fate/webm-webvtt-remux            |   24 +-
> > > >   21 files changed, 1513 insertions(+), 1443 deletions(-)
> > > > 
> > > > diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
> > > > index ce306a6c498..e71bfbd8777 100644
> > > > --- a/libavformat/framecrcenc.c
> > > > +++ b/libavformat/framecrcenc.c
> > > > @@ -21,8 +21,10 @@
> > > >   #include <inttypes.h>
> > > > +#include "config.h"
> > > >   #include "libavutil/adler32.h"
> > > >   #include "libavutil/avstring.h"
> > > > +#include "libavutil/intreadwrite.h"
> > > >   #include "libavcodec/codec_id.h"
> > > >   #include "libavcodec/codec_par.h"
> > > > @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
> > > >       return ff_framehash_write_header(s);
> > > >   }
> > > > +static av_unused void inline bswap(char *buf, int offset, int size)
> > > > +{
> > > > +    if (size == 8) {
> > > > +        uint64_t val = AV_RN64(buf + offset);
> > > > +        AV_WN64(buf + offset, av_bswap64(val));
> > > > +    } else if (size == 4) {
> > > > +        uint32_t val = AV_RN32(buf + offset);
> > > > +        AV_WN32(buf + offset, av_bswap32(val));
> > > > +    }
> > > > +}
> > > > +
> > > >   static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
> > > >   {
> > > >       uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
> > > > @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
> > > >       if (pkt->flags != AV_PKT_FLAG_KEY)
> > > >           av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
> > > >       if (pkt->side_data_elems) {
> > > > +        int i;
> > > 
> > > This change is wrong.
> > > 
> > > >           av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
> > > > -        for (int i = 0; i < pkt->side_data_elems; i++) {
> > > > -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
> > > > -                        pkt->side_data[i].size);
> > > > +        for (i=0; i<pkt->side_data_elems; i++) {
> > > > +            const AVPacketSideData *const sd = &pkt->side_data[i];
> > > > +            const uint8_t *data = sd->data;
> > > > +            uint32_t side_data_crc = 0;
> > > > +
> > > > +            switch (sd->type) {
> > > > +#if HAVE_BIGENDIAN
> > > > +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
> > > > +                                        sizeof(AVProducerReferenceTime))];
> > > > +            case AV_PKT_DATA_PALETTE:
> > > > +            case AV_PKT_DATA_REPLAYGAIN:
> > > > +            case AV_PKT_DATA_DISPLAYMATRIX:
> > > > +            case AV_PKT_DATA_STEREO3D:
> > > > +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
> > > > +            case AV_PKT_DATA_FALLBACK_TRACK:
> > > > +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
> > > > +            case AV_PKT_DATA_SPHERICAL:
> > > > +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
> > > > +            case AV_PKT_DATA_S12M_TIMECODE:
> > > > +                for (size_t j = 0; j < sd->size / 4; j++) {
> > > > +                    uint8_t buf[4];
> > > > +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
> > > > +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
> > > > +                }
> > > > +                break;
> > > > +            case AV_PKT_DATA_CPB_PROPERTIES:
> > > > +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
> > > > +                if (sd->size == sizeof(AVCPBProperties)) {
> > > > +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
> > > > +                    data = bswap_buf;
> > > > +                    BSWAP(AVCPBProperties, max_bitrate);
> > > > +                    BSWAP(AVCPBProperties, min_bitrate);
> > > > +                    BSWAP(AVCPBProperties, avg_bitrate);
> > > > +                    BSWAP(AVCPBProperties, buffer_size);
> > > > +                    BSWAP(AVCPBProperties, vbv_delay);
> > > > +                }
> > > > +                goto pod;
> > > > +            case AV_PKT_DATA_PRFT:
> > > > +                if (sd->size == sizeof(AVProducerReferenceTime)) {
> > > > +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
> > > > +                    data = bswap_buf;
> > > > +                    BSWAP(AVProducerReferenceTime, wallclock);
> > > > +                    BSWAP(AVProducerReferenceTime, flags);
> > > > +                }
> > > > +                goto pod;
> > > > +            pod:
> > > > +#endif
> > > > +
> > > > +            default:
> > > > +                side_data_crc = av_adler32_update(0, data, sd->size);
> > > > +                break;
> > > > +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
> > > > +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
> > > > +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
> > > > +                side_data_crc = 0;
> > > > +            }
> > > > +
> > > > +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
> > > > +                        pkt->side_data[i].size, side_data_crc);
> > > >           }
> > > >       }
> > > >       av_strlcatf(buf, sizeof(buf), "\n");
> > > 
> > > You should mention that you are basically reverting
> > > c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.
> > 
> > right, i didnt keep track of this as i just needed this locally
> > for testing to be possible and at the time didnt expect to
> > submit this to ffmpeg. But now 3 years later, it seems to make
> > sense to see if people want this maybe.
> > 
> > To test side data, it IS needed to well test side data.
> > But if people still want to not test side data in FFmpeg git.
> > I can continue to be the only one testing side data :)
> > 
> > ill repost it with a reference to c6ae560a18d67b9ddaa25a0338b7fb55e3312e57
> > and without the int i change, i did miss that.
> 
> I'm not against adding checksum for side data if it can be ensured it will
> be the same on both little and big endian, 32bit and 64bit,

If side data uses types that have a size that is platform dependant
(except pointers). Thats probably a mistake that should be corrected
on the next ABI bump.


> but I'm against
> skipping specific types like you did above with the IAMF ones. Or rather,
> against printing 0 for them, which is misleading. I'd rather not print
> anything for them after the size.

ok, new patch sent

thx

[...]
James Almer April 30, 2024, 11:29 p.m. UTC | #5
On 4/30/2024 8:25 PM, Michael Niedermayer wrote:
> On Sun, Apr 28, 2024 at 12:43:50AM -0300, James Almer wrote:
>> On 4/27/2024 9:07 AM, Michael Niedermayer wrote:
>>> On Sat, Apr 27, 2024 at 12:44:18PM +0200, Andreas Rheinhardt wrote:
>>>> Michael Niedermayer:
>>>>> This allows detecting issues in side data related code, same as what
>>>>> framecrc does for before already for packet data itself.
>>>>>
>>>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>>>> ---
>>>>>    libavformat/framecrcenc.c                   |   76 +-
>>>>>    tests/ref/fate/autorotate                   |    2 +-
>>>>>    tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
>>>>>    tests/ref/fate/ffmpeg-bsf-input             |   10 +-
>>>>>    tests/ref/fate/force_key_frames-source      |  784 ++++++------
>>>>>    tests/ref/fate/force_key_frames-source-drop |   34 +-
>>>>>    tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
>>>>>    tests/ref/fate/gapless-mp3                  |    6 +-
>>>>>    tests/ref/fate/h264_redundant_pps-side_data |    2 +-
>>>>>    tests/ref/fate/iamf-5_1-copy                |  208 ++--
>>>>>    tests/ref/fate/iamf-5_1-demux               |  208 ++--
>>>>>    tests/ref/fate/id3v2-priv-remux             |    2 +-
>>>>>    tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
>>>>>    tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
>>>>>    tests/ref/fate/matroska-opus-remux          |    2 +-
>>>>>    tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
>>>>>    tests/ref/fate/mov-cover-image              |    2 +-
>>>>>    tests/ref/fate/segment-mp4-to-ts            |  250 ++--
>>>>>    tests/ref/fate/shortest                     |  100 +-
>>>>>    tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
>>>>>    tests/ref/fate/webm-webvtt-remux            |   24 +-
>>>>>    21 files changed, 1513 insertions(+), 1443 deletions(-)
>>>>>
>>>>> diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
>>>>> index ce306a6c498..e71bfbd8777 100644
>>>>> --- a/libavformat/framecrcenc.c
>>>>> +++ b/libavformat/framecrcenc.c
>>>>> @@ -21,8 +21,10 @@
>>>>>    #include <inttypes.h>
>>>>> +#include "config.h"
>>>>>    #include "libavutil/adler32.h"
>>>>>    #include "libavutil/avstring.h"
>>>>> +#include "libavutil/intreadwrite.h"
>>>>>    #include "libavcodec/codec_id.h"
>>>>>    #include "libavcodec/codec_par.h"
>>>>> @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
>>>>>        return ff_framehash_write_header(s);
>>>>>    }
>>>>> +static av_unused void inline bswap(char *buf, int offset, int size)
>>>>> +{
>>>>> +    if (size == 8) {
>>>>> +        uint64_t val = AV_RN64(buf + offset);
>>>>> +        AV_WN64(buf + offset, av_bswap64(val));
>>>>> +    } else if (size == 4) {
>>>>> +        uint32_t val = AV_RN32(buf + offset);
>>>>> +        AV_WN32(buf + offset, av_bswap32(val));
>>>>> +    }
>>>>> +}
>>>>> +
>>>>>    static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>>>>>    {
>>>>>        uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
>>>>> @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>>>>>        if (pkt->flags != AV_PKT_FLAG_KEY)
>>>>>            av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
>>>>>        if (pkt->side_data_elems) {
>>>>> +        int i;
>>>>
>>>> This change is wrong.
>>>>
>>>>>            av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
>>>>> -        for (int i = 0; i < pkt->side_data_elems; i++) {
>>>>> -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
>>>>> -                        pkt->side_data[i].size);
>>>>> +        for (i=0; i<pkt->side_data_elems; i++) {
>>>>> +            const AVPacketSideData *const sd = &pkt->side_data[i];
>>>>> +            const uint8_t *data = sd->data;
>>>>> +            uint32_t side_data_crc = 0;
>>>>> +
>>>>> +            switch (sd->type) {
>>>>> +#if HAVE_BIGENDIAN
>>>>> +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
>>>>> +                                        sizeof(AVProducerReferenceTime))];
>>>>> +            case AV_PKT_DATA_PALETTE:
>>>>> +            case AV_PKT_DATA_REPLAYGAIN:
>>>>> +            case AV_PKT_DATA_DISPLAYMATRIX:
>>>>> +            case AV_PKT_DATA_STEREO3D:
>>>>> +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
>>>>> +            case AV_PKT_DATA_FALLBACK_TRACK:
>>>>> +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
>>>>> +            case AV_PKT_DATA_SPHERICAL:
>>>>> +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
>>>>> +            case AV_PKT_DATA_S12M_TIMECODE:
>>>>> +                for (size_t j = 0; j < sd->size / 4; j++) {
>>>>> +                    uint8_t buf[4];
>>>>> +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
>>>>> +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
>>>>> +                }
>>>>> +                break;
>>>>> +            case AV_PKT_DATA_CPB_PROPERTIES:
>>>>> +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
>>>>> +                if (sd->size == sizeof(AVCPBProperties)) {
>>>>> +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
>>>>> +                    data = bswap_buf;
>>>>> +                    BSWAP(AVCPBProperties, max_bitrate);
>>>>> +                    BSWAP(AVCPBProperties, min_bitrate);
>>>>> +                    BSWAP(AVCPBProperties, avg_bitrate);
>>>>> +                    BSWAP(AVCPBProperties, buffer_size);
>>>>> +                    BSWAP(AVCPBProperties, vbv_delay);
>>>>> +                }
>>>>> +                goto pod;
>>>>> +            case AV_PKT_DATA_PRFT:
>>>>> +                if (sd->size == sizeof(AVProducerReferenceTime)) {
>>>>> +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
>>>>> +                    data = bswap_buf;
>>>>> +                    BSWAP(AVProducerReferenceTime, wallclock);
>>>>> +                    BSWAP(AVProducerReferenceTime, flags);
>>>>> +                }
>>>>> +                goto pod;
>>>>> +            pod:
>>>>> +#endif
>>>>> +
>>>>> +            default:
>>>>> +                side_data_crc = av_adler32_update(0, data, sd->size);
>>>>> +                break;
>>>>> +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
>>>>> +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
>>>>> +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
>>>>> +                side_data_crc = 0;
>>>>> +            }
>>>>> +
>>>>> +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
>>>>> +                        pkt->side_data[i].size, side_data_crc);
>>>>>            }
>>>>>        }
>>>>>        av_strlcatf(buf, sizeof(buf), "\n");
>>>>
>>>> You should mention that you are basically reverting
>>>> c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.
>>>
>>> right, i didnt keep track of this as i just needed this locally
>>> for testing to be possible and at the time didnt expect to
>>> submit this to ffmpeg. But now 3 years later, it seems to make
>>> sense to see if people want this maybe.
>>>
>>> To test side data, it IS needed to well test side data.
>>> But if people still want to not test side data in FFmpeg git.
>>> I can continue to be the only one testing side data :)
>>>
>>> ill repost it with a reference to c6ae560a18d67b9ddaa25a0338b7fb55e3312e57
>>> and without the int i change, i did miss that.
>>
>> I'm not against adding checksum for side data if it can be ensured it will
>> be the same on both little and big endian, 32bit and 64bit,
> 
> If side data uses types that have a size that is platform dependant
> (except pointers). Thats probably a mistake that should be corrected
> on the next ABI bump.

size_t is used for buffer offsets on the IAMF side data types. I guess 
it could be changed to uint32_t.

> 
> 
>> but I'm against
>> skipping specific types like you did above with the IAMF ones. Or rather,
>> against printing 0 for them, which is misleading. I'd rather not print
>> anything for them after the size.
> 
> ok, new patch sent
> 
> thx
> 
> [...]
> 
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
Michael Niedermayer May 1, 2024, 12:40 a.m. UTC | #6
On Tue, Apr 30, 2024 at 08:29:07PM -0300, James Almer wrote:
> On 4/30/2024 8:25 PM, Michael Niedermayer wrote:
> > On Sun, Apr 28, 2024 at 12:43:50AM -0300, James Almer wrote:
> > > On 4/27/2024 9:07 AM, Michael Niedermayer wrote:
> > > > On Sat, Apr 27, 2024 at 12:44:18PM +0200, Andreas Rheinhardt wrote:
> > > > > Michael Niedermayer:
> > > > > > This allows detecting issues in side data related code, same as what
> > > > > > framecrc does for before already for packet data itself.
> > > > > > 
> > > > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > > > ---
> > > > > >    libavformat/framecrcenc.c                   |   76 +-
> > > > > >    tests/ref/fate/autorotate                   |    2 +-
> > > > > >    tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
> > > > > >    tests/ref/fate/ffmpeg-bsf-input             |   10 +-
> > > > > >    tests/ref/fate/force_key_frames-source      |  784 ++++++------
> > > > > >    tests/ref/fate/force_key_frames-source-drop |   34 +-
> > > > > >    tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
> > > > > >    tests/ref/fate/gapless-mp3                  |    6 +-
> > > > > >    tests/ref/fate/h264_redundant_pps-side_data |    2 +-
> > > > > >    tests/ref/fate/iamf-5_1-copy                |  208 ++--
> > > > > >    tests/ref/fate/iamf-5_1-demux               |  208 ++--
> > > > > >    tests/ref/fate/id3v2-priv-remux             |    2 +-
> > > > > >    tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
> > > > > >    tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
> > > > > >    tests/ref/fate/matroska-opus-remux          |    2 +-
> > > > > >    tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
> > > > > >    tests/ref/fate/mov-cover-image              |    2 +-
> > > > > >    tests/ref/fate/segment-mp4-to-ts            |  250 ++--
> > > > > >    tests/ref/fate/shortest                     |  100 +-
> > > > > >    tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
> > > > > >    tests/ref/fate/webm-webvtt-remux            |   24 +-
> > > > > >    21 files changed, 1513 insertions(+), 1443 deletions(-)
> > > > > > 
> > > > > > diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
> > > > > > index ce306a6c498..e71bfbd8777 100644
> > > > > > --- a/libavformat/framecrcenc.c
> > > > > > +++ b/libavformat/framecrcenc.c
> > > > > > @@ -21,8 +21,10 @@
> > > > > >    #include <inttypes.h>
> > > > > > +#include "config.h"
> > > > > >    #include "libavutil/adler32.h"
> > > > > >    #include "libavutil/avstring.h"
> > > > > > +#include "libavutil/intreadwrite.h"
> > > > > >    #include "libavcodec/codec_id.h"
> > > > > >    #include "libavcodec/codec_par.h"
> > > > > > @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
> > > > > >        return ff_framehash_write_header(s);
> > > > > >    }
> > > > > > +static av_unused void inline bswap(char *buf, int offset, int size)
> > > > > > +{
> > > > > > +    if (size == 8) {
> > > > > > +        uint64_t val = AV_RN64(buf + offset);
> > > > > > +        AV_WN64(buf + offset, av_bswap64(val));
> > > > > > +    } else if (size == 4) {
> > > > > > +        uint32_t val = AV_RN32(buf + offset);
> > > > > > +        AV_WN32(buf + offset, av_bswap32(val));
> > > > > > +    }
> > > > > > +}
> > > > > > +
> > > > > >    static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
> > > > > >    {
> > > > > >        uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
> > > > > > @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
> > > > > >        if (pkt->flags != AV_PKT_FLAG_KEY)
> > > > > >            av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
> > > > > >        if (pkt->side_data_elems) {
> > > > > > +        int i;
> > > > > 
> > > > > This change is wrong.
> > > > > 
> > > > > >            av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
> > > > > > -        for (int i = 0; i < pkt->side_data_elems; i++) {
> > > > > > -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
> > > > > > -                        pkt->side_data[i].size);
> > > > > > +        for (i=0; i<pkt->side_data_elems; i++) {
> > > > > > +            const AVPacketSideData *const sd = &pkt->side_data[i];
> > > > > > +            const uint8_t *data = sd->data;
> > > > > > +            uint32_t side_data_crc = 0;
> > > > > > +
> > > > > > +            switch (sd->type) {
> > > > > > +#if HAVE_BIGENDIAN
> > > > > > +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
> > > > > > +                                        sizeof(AVProducerReferenceTime))];
> > > > > > +            case AV_PKT_DATA_PALETTE:
> > > > > > +            case AV_PKT_DATA_REPLAYGAIN:
> > > > > > +            case AV_PKT_DATA_DISPLAYMATRIX:
> > > > > > +            case AV_PKT_DATA_STEREO3D:
> > > > > > +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
> > > > > > +            case AV_PKT_DATA_FALLBACK_TRACK:
> > > > > > +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
> > > > > > +            case AV_PKT_DATA_SPHERICAL:
> > > > > > +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
> > > > > > +            case AV_PKT_DATA_S12M_TIMECODE:
> > > > > > +                for (size_t j = 0; j < sd->size / 4; j++) {
> > > > > > +                    uint8_t buf[4];
> > > > > > +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
> > > > > > +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
> > > > > > +                }
> > > > > > +                break;
> > > > > > +            case AV_PKT_DATA_CPB_PROPERTIES:
> > > > > > +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
> > > > > > +                if (sd->size == sizeof(AVCPBProperties)) {
> > > > > > +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
> > > > > > +                    data = bswap_buf;
> > > > > > +                    BSWAP(AVCPBProperties, max_bitrate);
> > > > > > +                    BSWAP(AVCPBProperties, min_bitrate);
> > > > > > +                    BSWAP(AVCPBProperties, avg_bitrate);
> > > > > > +                    BSWAP(AVCPBProperties, buffer_size);
> > > > > > +                    BSWAP(AVCPBProperties, vbv_delay);
> > > > > > +                }
> > > > > > +                goto pod;
> > > > > > +            case AV_PKT_DATA_PRFT:
> > > > > > +                if (sd->size == sizeof(AVProducerReferenceTime)) {
> > > > > > +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
> > > > > > +                    data = bswap_buf;
> > > > > > +                    BSWAP(AVProducerReferenceTime, wallclock);
> > > > > > +                    BSWAP(AVProducerReferenceTime, flags);
> > > > > > +                }
> > > > > > +                goto pod;
> > > > > > +            pod:
> > > > > > +#endif
> > > > > > +
> > > > > > +            default:
> > > > > > +                side_data_crc = av_adler32_update(0, data, sd->size);
> > > > > > +                break;
> > > > > > +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
> > > > > > +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
> > > > > > +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
> > > > > > +                side_data_crc = 0;
> > > > > > +            }
> > > > > > +
> > > > > > +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
> > > > > > +                        pkt->side_data[i].size, side_data_crc);
> > > > > >            }
> > > > > >        }
> > > > > >        av_strlcatf(buf, sizeof(buf), "\n");
> > > > > 
> > > > > You should mention that you are basically reverting
> > > > > c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.
> > > > 
> > > > right, i didnt keep track of this as i just needed this locally
> > > > for testing to be possible and at the time didnt expect to
> > > > submit this to ffmpeg. But now 3 years later, it seems to make
> > > > sense to see if people want this maybe.
> > > > 
> > > > To test side data, it IS needed to well test side data.
> > > > But if people still want to not test side data in FFmpeg git.
> > > > I can continue to be the only one testing side data :)
> > > > 
> > > > ill repost it with a reference to c6ae560a18d67b9ddaa25a0338b7fb55e3312e57
> > > > and without the int i change, i did miss that.
> > > 
> > > I'm not against adding checksum for side data if it can be ensured it will
> > > be the same on both little and big endian, 32bit and 64bit,
> > 
> > If side data uses types that have a size that is platform dependant
> > (except pointers). Thats probably a mistake that should be corrected
> > on the next ABI bump.
> 
> size_t is used for buffer offsets on the IAMF side data types. I guess it
> could be changed to uint32_t.

i think uint32 would have been better, yes

thx

[...]
James Almer May 1, 2024, 12:45 a.m. UTC | #7
On 4/30/2024 9:40 PM, Michael Niedermayer wrote:
> On Tue, Apr 30, 2024 at 08:29:07PM -0300, James Almer wrote:
>> On 4/30/2024 8:25 PM, Michael Niedermayer wrote:
>>> On Sun, Apr 28, 2024 at 12:43:50AM -0300, James Almer wrote:
>>>> On 4/27/2024 9:07 AM, Michael Niedermayer wrote:
>>>>> On Sat, Apr 27, 2024 at 12:44:18PM +0200, Andreas Rheinhardt wrote:
>>>>>> Michael Niedermayer:
>>>>>>> This allows detecting issues in side data related code, same as what
>>>>>>> framecrc does for before already for packet data itself.
>>>>>>>
>>>>>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>>>>>> ---
>>>>>>>     libavformat/framecrcenc.c                   |   76 +-
>>>>>>>     tests/ref/fate/autorotate                   |    2 +-
>>>>>>>     tests/ref/fate/cover-art-mp3-id3v2-remux    |    2 +-
>>>>>>>     tests/ref/fate/ffmpeg-bsf-input             |   10 +-
>>>>>>>     tests/ref/fate/force_key_frames-source      |  784 ++++++------
>>>>>>>     tests/ref/fate/force_key_frames-source-drop |   34 +-
>>>>>>>     tests/ref/fate/force_key_frames-source-dup  | 1224 +++++++++----------
>>>>>>>     tests/ref/fate/gapless-mp3                  |    6 +-
>>>>>>>     tests/ref/fate/h264_redundant_pps-side_data |    2 +-
>>>>>>>     tests/ref/fate/iamf-5_1-copy                |  208 ++--
>>>>>>>     tests/ref/fate/iamf-5_1-demux               |  208 ++--
>>>>>>>     tests/ref/fate/id3v2-priv-remux             |    2 +-
>>>>>>>     tests/ref/fate/matroska-hdr10-plus-remux    |    2 +-
>>>>>>>     tests/ref/fate/matroska-ogg-opus-remux      |    2 +-
>>>>>>>     tests/ref/fate/matroska-opus-remux          |    2 +-
>>>>>>>     tests/ref/fate/matroska-vp8-alpha-remux     |   14 +-
>>>>>>>     tests/ref/fate/mov-cover-image              |    2 +-
>>>>>>>     tests/ref/fate/segment-mp4-to-ts            |  250 ++--
>>>>>>>     tests/ref/fate/shortest                     |  100 +-
>>>>>>>     tests/ref/fate/webm-hdr10-plus-remux        |    2 +-
>>>>>>>     tests/ref/fate/webm-webvtt-remux            |   24 +-
>>>>>>>     21 files changed, 1513 insertions(+), 1443 deletions(-)
>>>>>>>
>>>>>>> diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
>>>>>>> index ce306a6c498..e71bfbd8777 100644
>>>>>>> --- a/libavformat/framecrcenc.c
>>>>>>> +++ b/libavformat/framecrcenc.c
>>>>>>> @@ -21,8 +21,10 @@
>>>>>>>     #include <inttypes.h>
>>>>>>> +#include "config.h"
>>>>>>>     #include "libavutil/adler32.h"
>>>>>>>     #include "libavutil/avstring.h"
>>>>>>> +#include "libavutil/intreadwrite.h"
>>>>>>>     #include "libavcodec/codec_id.h"
>>>>>>>     #include "libavcodec/codec_par.h"
>>>>>>> @@ -48,6 +50,17 @@ static int framecrc_write_header(struct AVFormatContext *s)
>>>>>>>         return ff_framehash_write_header(s);
>>>>>>>     }
>>>>>>> +static av_unused void inline bswap(char *buf, int offset, int size)
>>>>>>> +{
>>>>>>> +    if (size == 8) {
>>>>>>> +        uint64_t val = AV_RN64(buf + offset);
>>>>>>> +        AV_WN64(buf + offset, av_bswap64(val));
>>>>>>> +    } else if (size == 4) {
>>>>>>> +        uint32_t val = AV_RN32(buf + offset);
>>>>>>> +        AV_WN32(buf + offset, av_bswap32(val));
>>>>>>> +    }
>>>>>>> +}
>>>>>>> +
>>>>>>>     static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>>>>>>>     {
>>>>>>>         uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
>>>>>>> @@ -58,11 +71,68 @@ static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
>>>>>>>         if (pkt->flags != AV_PKT_FLAG_KEY)
>>>>>>>             av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
>>>>>>>         if (pkt->side_data_elems) {
>>>>>>> +        int i;
>>>>>>
>>>>>> This change is wrong.
>>>>>>
>>>>>>>             av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
>>>>>>> -        for (int i = 0; i < pkt->side_data_elems; i++) {
>>>>>>> -            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
>>>>>>> -                        pkt->side_data[i].size);
>>>>>>> +        for (i=0; i<pkt->side_data_elems; i++) {
>>>>>>> +            const AVPacketSideData *const sd = &pkt->side_data[i];
>>>>>>> +            const uint8_t *data = sd->data;
>>>>>>> +            uint32_t side_data_crc = 0;
>>>>>>> +
>>>>>>> +            switch (sd->type) {
>>>>>>> +#if HAVE_BIGENDIAN
>>>>>>> +                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
>>>>>>> +                                        sizeof(AVProducerReferenceTime))];
>>>>>>> +            case AV_PKT_DATA_PALETTE:
>>>>>>> +            case AV_PKT_DATA_REPLAYGAIN:
>>>>>>> +            case AV_PKT_DATA_DISPLAYMATRIX:
>>>>>>> +            case AV_PKT_DATA_STEREO3D:
>>>>>>> +            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
>>>>>>> +            case AV_PKT_DATA_FALLBACK_TRACK:
>>>>>>> +            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
>>>>>>> +            case AV_PKT_DATA_SPHERICAL:
>>>>>>> +            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
>>>>>>> +            case AV_PKT_DATA_S12M_TIMECODE:
>>>>>>> +                for (size_t j = 0; j < sd->size / 4; j++) {
>>>>>>> +                    uint8_t buf[4];
>>>>>>> +                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
>>>>>>> +                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
>>>>>>> +                }
>>>>>>> +                break;
>>>>>>> +            case AV_PKT_DATA_CPB_PROPERTIES:
>>>>>>> +#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
>>>>>>> +                if (sd->size == sizeof(AVCPBProperties)) {
>>>>>>> +                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
>>>>>>> +                    data = bswap_buf;
>>>>>>> +                    BSWAP(AVCPBProperties, max_bitrate);
>>>>>>> +                    BSWAP(AVCPBProperties, min_bitrate);
>>>>>>> +                    BSWAP(AVCPBProperties, avg_bitrate);
>>>>>>> +                    BSWAP(AVCPBProperties, buffer_size);
>>>>>>> +                    BSWAP(AVCPBProperties, vbv_delay);
>>>>>>> +                }
>>>>>>> +                goto pod;
>>>>>>> +            case AV_PKT_DATA_PRFT:
>>>>>>> +                if (sd->size == sizeof(AVProducerReferenceTime)) {
>>>>>>> +                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
>>>>>>> +                    data = bswap_buf;
>>>>>>> +                    BSWAP(AVProducerReferenceTime, wallclock);
>>>>>>> +                    BSWAP(AVProducerReferenceTime, flags);
>>>>>>> +                }
>>>>>>> +                goto pod;
>>>>>>> +            pod:
>>>>>>> +#endif
>>>>>>> +
>>>>>>> +            default:
>>>>>>> +                side_data_crc = av_adler32_update(0, data, sd->size);
>>>>>>> +                break;
>>>>>>> +            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
>>>>>>> +            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
>>>>>>> +            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
>>>>>>> +                side_data_crc = 0;
>>>>>>> +            }
>>>>>>> +
>>>>>>> +            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
>>>>>>> +                        pkt->side_data[i].size, side_data_crc);
>>>>>>>             }
>>>>>>>         }
>>>>>>>         av_strlcatf(buf, sizeof(buf), "\n");
>>>>>>
>>>>>> You should mention that you are basically reverting
>>>>>> c6ae560a18d67b9ddaa25a0338b7fb55e3312e57.
>>>>>
>>>>> right, i didnt keep track of this as i just needed this locally
>>>>> for testing to be possible and at the time didnt expect to
>>>>> submit this to ffmpeg. But now 3 years later, it seems to make
>>>>> sense to see if people want this maybe.
>>>>>
>>>>> To test side data, it IS needed to well test side data.
>>>>> But if people still want to not test side data in FFmpeg git.
>>>>> I can continue to be the only one testing side data :)
>>>>>
>>>>> ill repost it with a reference to c6ae560a18d67b9ddaa25a0338b7fb55e3312e57
>>>>> and without the int i change, i did miss that.
>>>>
>>>> I'm not against adding checksum for side data if it can be ensured it will
>>>> be the same on both little and big endian, 32bit and 64bit,
>>>
>>> If side data uses types that have a size that is platform dependant
>>> (except pointers). Thats probably a mistake that should be corrected
>>> on the next ABI bump.
>>
>> size_t is used for buffer offsets on the IAMF side data types. I guess it
>> could be changed to uint32_t.
> 
> i think uint32 would have been better, yes

It will probably not be enough anyway. There's alignment at play too.
Anton Khirnov May 27, 2024, 8:15 a.m. UTC | #8
Quoting Michael Niedermayer (2024-04-27 02:36:23)
> This allows detecting issues in side data related code, same as what
> framecrc does for before already for packet data itself.
> 
> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> ---

I am against this patch. Checksumming side data is a fundamentally wrong
thing to do.
James Almer May 27, 2024, 2:11 p.m. UTC | #9
On 5/27/2024 5:15 AM, Anton Khirnov wrote:
> Quoting Michael Niedermayer (2024-04-27 02:36:23)
>> This allows detecting issues in side data related code, same as what
>> framecrc does for before already for packet data itself.
>>
>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>> ---
> 
> I am against this patch. Checksumming side data is a fundamentally wrong
> thing to do.

framehash should be updated to also not print hashes, then. Problem is 
that it's versioned, so we would need to "deprecate" the current versions.

There's also the issue of printing sizes, which for some structs (iamf, 
video_enc_params) it can vary depending on target, so my suggestion was 
adding an option to disable printing certain values like it. What do you 
think?
Michael Niedermayer May 27, 2024, 6:11 p.m. UTC | #10
On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
> Quoting Michael Niedermayer (2024-04-27 02:36:23)
> > This allows detecting issues in side data related code, same as what
> > framecrc does for before already for packet data itself.
> > 
> > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > ---
> 
> I am against this patch. Checksumming side data is a fundamentally wrong
> thing to do.

It, or something equivalent is neccessary for regression testing.
(and it was you who asked also for the tests i run to be part of
 fate. But here you object to it)

You know, not checking side data is not checking it so differences would then not be
detected allowing for unintended changes to be introduced (aka bugs)

If you block this solution without providing another solution
then i will bring this to the technical committee, to seek its guidance
on the way forward.

thx

[...]
James Almer May 27, 2024, 6:17 p.m. UTC | #11
On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
> On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
>> Quoting Michael Niedermayer (2024-04-27 02:36:23)
>>> This allows detecting issues in side data related code, same as what
>>> framecrc does for before already for packet data itself.
>>>
>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>> ---
>>
>> I am against this patch. Checksumming side data is a fundamentally wrong
>> thing to do.
> 
> It, or something equivalent is neccessary for regression testing.
> (and it was you who asked also for the tests i run to be part of
>   fate. But here you object to it)
> 
> You know, not checking side data is not checking it so differences would then not be
> detected allowing for unintended changes to be introduced (aka bugs)

You have seen how much code is needed to get hashing to work for all 
targets with some types, so it does feel like it's not the right thing 
to do. ffprobe (and f_sidedata) are what should be used for actual 
integrity checks.

And i insist that disabling printing the size (or any information about 
side data) from framecrc is needed for FATE tests, as we can't even use 
it to hash actual packet data otherwise.
Michael Niedermayer May 27, 2024, 7:20 p.m. UTC | #12
On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
> On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
> > On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
> > > Quoting Michael Niedermayer (2024-04-27 02:36:23)
> > > > This allows detecting issues in side data related code, same as what
> > > > framecrc does for before already for packet data itself.
> > > > 
> > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > ---
> > > 
> > > I am against this patch. Checksumming side data is a fundamentally wrong
> > > thing to do.
> > 
> > It, or something equivalent is neccessary for regression testing.
> > (and it was you who asked also for the tests i run to be part of
> >   fate. But here you object to it)
> > 
> > You know, not checking side data is not checking it so differences would then not be
> > detected allowing for unintended changes to be introduced (aka bugs)
> 
> You have seen how much code is needed to get hashing to work for all targets
> with some types,

 framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 73 insertions(+), 3 deletions(-)

70 more lines of code, in my patch

If we need another 70 to handle some corner cases, no idea if we do, thats
still negligible


> so it does feel like it's not the right thing to do.

I dont think i can follow that logic


> ffprobe (and f_sidedata) are what should be used for actual integrity
> checks.

ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable

If you suggest that side data should not be tested in FFmpeg while packet.data
should be tested. That position seems inconsistant to me

If you suggest that neither side data nor packet.data should be tested in FFmpeg
iam confident that there would be a majority disagreeing.

f_sidedata is not at the output of ffmpeg so even if it could test it, it
does not test the ffmpeg output.
We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
filter.

Again, there is need to test what comes out of FFmpeg, thats at the muxer level
thats what framecrcenc does.

thx

[...]
Michael Niedermayer May 27, 2024, 7:31 p.m. UTC | #13
On Mon, May 27, 2024 at 09:20:55PM +0200, Michael Niedermayer wrote:
> On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
> > On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
> > > On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
> > > > Quoting Michael Niedermayer (2024-04-27 02:36:23)
> > > > > This allows detecting issues in side data related code, same as what
> > > > > framecrc does for before already for packet data itself.
> > > > > 
> > > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > > ---
> > > > 
> > > > I am against this patch. Checksumming side data is a fundamentally wrong
> > > > thing to do.
> > > 
> > > It, or something equivalent is neccessary for regression testing.
> > > (and it was you who asked also for the tests i run to be part of
> > >   fate. But here you object to it)
> > > 
> > > You know, not checking side data is not checking it so differences would then not be
> > > detected allowing for unintended changes to be introduced (aka bugs)
> > 
> > You have seen how much code is needed to get hashing to work for all targets
> > with some types,
> 
>  framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
>  1 file changed, 73 insertions(+), 3 deletions(-)
> 
> 70 more lines of code, in my patch
> 
> If we need another 70 to handle some corner cases, no idea if we do, thats
> still negligible
> 
> 
> > so it does feel like it's not the right thing to do.
> 
> I dont think i can follow that logic
> 
> 
> > ffprobe (and f_sidedata) are what should be used for actual integrity
> > checks.
> 
> ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable
> 
> If you suggest that side data should not be tested in FFmpeg while packet.data
> should be tested. That position seems inconsistant to me
> 
> If you suggest that neither side data nor packet.data should be tested in FFmpeg
> iam confident that there would be a majority disagreeing.
> 
> f_sidedata is not at the output of ffmpeg so even if it could test it, it
> does not test the ffmpeg output.
> We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
> filter.
> 
> Again, there is need to test what comes out of FFmpeg, thats at the muxer level
> thats what framecrcenc does.

There is also an additional aspect
and that is efficiency or "time taken by all fate tests"
framecrcenc already has all the side data, it costs basically 0 time to print that

any ffprobe based check needs to run everything a 2nd time, so it will be slower

also ffprobe is only good for side data from the demuxer.
my patch tests all cases including side data from the encoder or any other
source that gets forwarded to the muxer in each testcase.

thx

[...]
James Almer May 27, 2024, 7:32 p.m. UTC | #14
On 5/27/2024 4:20 PM, Michael Niedermayer wrote:
> On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
>> On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
>>> On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
>>>> Quoting Michael Niedermayer (2024-04-27 02:36:23)
>>>>> This allows detecting issues in side data related code, same as what
>>>>> framecrc does for before already for packet data itself.
>>>>>
>>>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>>>> ---
>>>>
>>>> I am against this patch. Checksumming side data is a fundamentally wrong
>>>> thing to do.
>>>
>>> It, or something equivalent is neccessary for regression testing.
>>> (and it was you who asked also for the tests i run to be part of
>>>    fate. But here you object to it)
>>>
>>> You know, not checking side data is not checking it so differences would then not be
>>> detected allowing for unintended changes to be introduced (aka bugs)
>>
>> You have seen how much code is needed to get hashing to work for all targets
>> with some types,
> 
>   framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
>   1 file changed, 73 insertions(+), 3 deletions(-)
> 
> 70 more lines of code, in my patch
> 
> If we need another 70 to handle some corner cases, no idea if we do, thats
> still negligible

IAMF and video_enc_params. And potential future types. It's not negligible.

> 
> 
>> so it does feel like it's not the right thing to do.
> 
> I dont think i can follow that logic

Extra custom code to take into account specific side data types in order 
to output a common hash value. Do we really need to add that when we 
already have side data type specific parsing code to in ffprobe?

> 
> 
>> ffprobe (and f_sidedata) are what should be used for actual integrity
>> checks.
> 
> ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable

I didn't say ffprobe should be used to test ffmpeg, i said ffprobe 
should be used to test side data integrity.

> 
> If you suggest that side data should not be tested in FFmpeg while packet.data
> should be tested. That position seems inconsistant to me
> 
> If you suggest that neither side data nor packet.data should be tested in FFmpeg
> iam confident that there would be a majority disagreeing.
> 
> f_sidedata is not at the output of ffmpeg so even if it could test it, it
> does not test the ffmpeg output.

I meant {a,f}_showinfo, sorry. And it does not apply to packet side 
data, obviously.

> We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
> filter.
> 
> Again, there is need to test what comes out of FFmpeg, thats at the muxer level
> thats what framecrcenc does.

Packet side data does not come out of ffmpeg, it comes out of 
libavformat (or libavcodec/libavfilter in the case of frame side data). 
A user of lavf can look at side data instead of needing a lavf muxer to 
print a hash that needs ad hoc code for it to match across targets.

> 
> thx
> 
> [...]
> 
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
James Almer May 27, 2024, 7:33 p.m. UTC | #15
On 5/27/2024 4:31 PM, Michael Niedermayer wrote:
> On Mon, May 27, 2024 at 09:20:55PM +0200, Michael Niedermayer wrote:
>> On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
>>> On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
>>>> On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
>>>>> Quoting Michael Niedermayer (2024-04-27 02:36:23)
>>>>>> This allows detecting issues in side data related code, same as what
>>>>>> framecrc does for before already for packet data itself.
>>>>>>
>>>>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>>>>> ---
>>>>>
>>>>> I am against this patch. Checksumming side data is a fundamentally wrong
>>>>> thing to do.
>>>>
>>>> It, or something equivalent is neccessary for regression testing.
>>>> (and it was you who asked also for the tests i run to be part of
>>>>    fate. But here you object to it)
>>>>
>>>> You know, not checking side data is not checking it so differences would then not be
>>>> detected allowing for unintended changes to be introduced (aka bugs)
>>>
>>> You have seen how much code is needed to get hashing to work for all targets
>>> with some types,
>>
>>   framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
>>   1 file changed, 73 insertions(+), 3 deletions(-)
>>
>> 70 more lines of code, in my patch
>>
>> If we need another 70 to handle some corner cases, no idea if we do, thats
>> still negligible
>>
>>
>>> so it does feel like it's not the right thing to do.
>>
>> I dont think i can follow that logic
>>
>>
>>> ffprobe (and f_sidedata) are what should be used for actual integrity
>>> checks.
>>
>> ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable
>>
>> If you suggest that side data should not be tested in FFmpeg while packet.data
>> should be tested. That position seems inconsistant to me
>>
>> If you suggest that neither side data nor packet.data should be tested in FFmpeg
>> iam confident that there would be a majority disagreeing.
>>
>> f_sidedata is not at the output of ffmpeg so even if it could test it, it
>> does not test the ffmpeg output.
>> We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
>> filter.
>>
>> Again, there is need to test what comes out of FFmpeg, thats at the muxer level
>> thats what framecrcenc does.
> 
> There is also an additional aspect
> and that is efficiency or "time taken by all fate tests"
> framecrcenc already has all the side data, it costs basically 0 time to print that
> 
> any ffprobe based check needs to run everything a 2nd time, so it will be slower
> 
> also ffprobe is only good for side data from the demuxer.
> my patch tests all cases including side data from the encoder or any other
> source that gets forwarded to the muxer in each testcase.

We could extend showinfo_bsf to print side data information.

> 
> thx
> 
> [...]
> 
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
Michael Niedermayer May 27, 2024, 7:43 p.m. UTC | #16
On Mon, May 27, 2024 at 04:32:43PM -0300, James Almer wrote:
> On 5/27/2024 4:20 PM, Michael Niedermayer wrote:
> > On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
> > > On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
> > > > On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
> > > > > Quoting Michael Niedermayer (2024-04-27 02:36:23)
> > > > > > This allows detecting issues in side data related code, same as what
> > > > > > framecrc does for before already for packet data itself.
> > > > > > 
> > > > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > > > ---
> > > > > 
> > > > > I am against this patch. Checksumming side data is a fundamentally wrong
> > > > > thing to do.
> > > > 
> > > > It, or something equivalent is neccessary for regression testing.
> > > > (and it was you who asked also for the tests i run to be part of
> > > >    fate. But here you object to it)
> > > > 
> > > > You know, not checking side data is not checking it so differences would then not be
> > > > detected allowing for unintended changes to be introduced (aka bugs)
> > > 
> > > You have seen how much code is needed to get hashing to work for all targets
> > > with some types,
> > 
> >   framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
> >   1 file changed, 73 insertions(+), 3 deletions(-)
> > 
> > 70 more lines of code, in my patch
> > 
> > If we need another 70 to handle some corner cases, no idea if we do, thats
> > still negligible
> 
> IAMF and video_enc_params. And potential future types. It's not negligible.
> 

> > 
> > 
> > > so it does feel like it's not the right thing to do.
> > 
> > I dont think i can follow that logic
> 
> Extra custom code to take into account specific side data types in order to
> output a common hash value. Do we really need to add that when we already
> have side data type specific parsing code to in ffprobe?

side data specific code doesnt belong in ffprobe

what should instead be done is to have side data parsing code where the side data
struct is

Side data can be represented in at least 4 ways
1. one or more C structs
2. a serialized bytestream
3. json data
4. a human readable key value printout

We have some of this in ffprobe, it should be closer to iamf.c/h and then
used by framecrcenc (whatever format framecrcenc uses is not important)


[...]

thx
Michael Niedermayer May 27, 2024, 7:50 p.m. UTC | #17
On Mon, May 27, 2024 at 04:33:21PM -0300, James Almer wrote:
> On 5/27/2024 4:31 PM, Michael Niedermayer wrote:
> > On Mon, May 27, 2024 at 09:20:55PM +0200, Michael Niedermayer wrote:
> > > On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
> > > > On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
> > > > > On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
> > > > > > Quoting Michael Niedermayer (2024-04-27 02:36:23)
> > > > > > > This allows detecting issues in side data related code, same as what
> > > > > > > framecrc does for before already for packet data itself.
> > > > > > > 
> > > > > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > > > > ---
> > > > > > 
> > > > > > I am against this patch. Checksumming side data is a fundamentally wrong
> > > > > > thing to do.
> > > > > 
> > > > > It, or something equivalent is neccessary for regression testing.
> > > > > (and it was you who asked also for the tests i run to be part of
> > > > >    fate. But here you object to it)
> > > > > 
> > > > > You know, not checking side data is not checking it so differences would then not be
> > > > > detected allowing for unintended changes to be introduced (aka bugs)
> > > > 
> > > > You have seen how much code is needed to get hashing to work for all targets
> > > > with some types,
> > > 
> > >   framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
> > >   1 file changed, 73 insertions(+), 3 deletions(-)
> > > 
> > > 70 more lines of code, in my patch
> > > 
> > > If we need another 70 to handle some corner cases, no idea if we do, thats
> > > still negligible
> > > 
> > > 
> > > > so it does feel like it's not the right thing to do.
> > > 
> > > I dont think i can follow that logic
> > > 
> > > 
> > > > ffprobe (and f_sidedata) are what should be used for actual integrity
> > > > checks.
> > > 
> > > ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable
> > > 
> > > If you suggest that side data should not be tested in FFmpeg while packet.data
> > > should be tested. That position seems inconsistant to me
> > > 
> > > If you suggest that neither side data nor packet.data should be tested in FFmpeg
> > > iam confident that there would be a majority disagreeing.
> > > 
> > > f_sidedata is not at the output of ffmpeg so even if it could test it, it
> > > does not test the ffmpeg output.
> > > We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
> > > filter.
> > > 
> > > Again, there is need to test what comes out of FFmpeg, thats at the muxer level
> > > thats what framecrcenc does.
> > 
> > There is also an additional aspect
> > and that is efficiency or "time taken by all fate tests"
> > framecrcenc already has all the side data, it costs basically 0 time to print that
> > 
> > any ffprobe based check needs to run everything a 2nd time, so it will be slower
> > 
> > also ffprobe is only good for side data from the demuxer.
> > my patch tests all cases including side data from the encoder or any other
> > source that gets forwarded to the muxer in each testcase.
> 
> We could extend showinfo_bsf to print side data information.

Well, you argued a moment ago that its too much code (in framecrcenc)
its not going to be less code if the same or more detailed information
is printed in a showinfo_bsf

again, my suggestion is that this code should go to where side data is
and then showinfo_bsf, framecrcenc and ffprobe can use it

thx

[...]
James Almer May 27, 2024, 7:52 p.m. UTC | #18
On 5/27/2024 4:50 PM, Michael Niedermayer wrote:
> On Mon, May 27, 2024 at 04:33:21PM -0300, James Almer wrote:
>> On 5/27/2024 4:31 PM, Michael Niedermayer wrote:
>>> On Mon, May 27, 2024 at 09:20:55PM +0200, Michael Niedermayer wrote:
>>>> On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
>>>>> On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
>>>>>> On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
>>>>>>> Quoting Michael Niedermayer (2024-04-27 02:36:23)
>>>>>>>> This allows detecting issues in side data related code, same as what
>>>>>>>> framecrc does for before already for packet data itself.
>>>>>>>>
>>>>>>>> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
>>>>>>>> ---
>>>>>>>
>>>>>>> I am against this patch. Checksumming side data is a fundamentally wrong
>>>>>>> thing to do.
>>>>>>
>>>>>> It, or something equivalent is neccessary for regression testing.
>>>>>> (and it was you who asked also for the tests i run to be part of
>>>>>>     fate. But here you object to it)
>>>>>>
>>>>>> You know, not checking side data is not checking it so differences would then not be
>>>>>> detected allowing for unintended changes to be introduced (aka bugs)
>>>>>
>>>>> You have seen how much code is needed to get hashing to work for all targets
>>>>> with some types,
>>>>
>>>>    framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
>>>>    1 file changed, 73 insertions(+), 3 deletions(-)
>>>>
>>>> 70 more lines of code, in my patch
>>>>
>>>> If we need another 70 to handle some corner cases, no idea if we do, thats
>>>> still negligible
>>>>
>>>>
>>>>> so it does feel like it's not the right thing to do.
>>>>
>>>> I dont think i can follow that logic
>>>>
>>>>
>>>>> ffprobe (and f_sidedata) are what should be used for actual integrity
>>>>> checks.
>>>>
>>>> ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable
>>>>
>>>> If you suggest that side data should not be tested in FFmpeg while packet.data
>>>> should be tested. That position seems inconsistant to me
>>>>
>>>> If you suggest that neither side data nor packet.data should be tested in FFmpeg
>>>> iam confident that there would be a majority disagreeing.
>>>>
>>>> f_sidedata is not at the output of ffmpeg so even if it could test it, it
>>>> does not test the ffmpeg output.
>>>> We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
>>>> filter.
>>>>
>>>> Again, there is need to test what comes out of FFmpeg, thats at the muxer level
>>>> thats what framecrcenc does.
>>>
>>> There is also an additional aspect
>>> and that is efficiency or "time taken by all fate tests"
>>> framecrcenc already has all the side data, it costs basically 0 time to print that
>>>
>>> any ffprobe based check needs to run everything a 2nd time, so it will be slower
>>>
>>> also ffprobe is only good for side data from the demuxer.
>>> my patch tests all cases including side data from the encoder or any other
>>> source that gets forwarded to the muxer in each testcase.
>>
>> We could extend showinfo_bsf to print side data information.
> 
> Well, you argued a moment ago that its too much code (in framecrcenc)
> its not going to be less code if the same or more detailed information
> is printed in a showinfo_bsf
> 
> again, my suggestion is that this code should go to where side data is
> and then showinfo_bsf, framecrcenc and ffprobe can use it

I mean, showinfo_bsf could be adapted in a way ffprobe can invoke/parse, 
so all the related ffprobe code can be moved there.

> 
> thx
> 
> [...]
> 
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
Michael Niedermayer May 30, 2024, 7:33 p.m. UTC | #19
On Mon, May 27, 2024 at 04:52:22PM -0300, James Almer wrote:
> On 5/27/2024 4:50 PM, Michael Niedermayer wrote:
> > On Mon, May 27, 2024 at 04:33:21PM -0300, James Almer wrote:
> > > On 5/27/2024 4:31 PM, Michael Niedermayer wrote:
> > > > On Mon, May 27, 2024 at 09:20:55PM +0200, Michael Niedermayer wrote:
> > > > > On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote:
> > > > > > On 5/27/2024 3:11 PM, Michael Niedermayer wrote:
> > > > > > > On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote:
> > > > > > > > Quoting Michael Niedermayer (2024-04-27 02:36:23)
> > > > > > > > > This allows detecting issues in side data related code, same as what
> > > > > > > > > framecrc does for before already for packet data itself.
> > > > > > > > > 
> > > > > > > > > Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> > > > > > > > > ---
> > > > > > > > 
> > > > > > > > I am against this patch. Checksumming side data is a fundamentally wrong
> > > > > > > > thing to do.
> > > > > > > 
> > > > > > > It, or something equivalent is neccessary for regression testing.
> > > > > > > (and it was you who asked also for the tests i run to be part of
> > > > > > >     fate. But here you object to it)
> > > > > > > 
> > > > > > > You know, not checking side data is not checking it so differences would then not be
> > > > > > > detected allowing for unintended changes to be introduced (aka bugs)
> > > > > > 
> > > > > > You have seen how much code is needed to get hashing to work for all targets
> > > > > > with some types,
> > > > > 
> > > > >    framecrcenc.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
> > > > >    1 file changed, 73 insertions(+), 3 deletions(-)
> > > > > 
> > > > > 70 more lines of code, in my patch
> > > > > 
> > > > > If we need another 70 to handle some corner cases, no idea if we do, thats
> > > > > still negligible
> > > > > 
> > > > > 
> > > > > > so it does feel like it's not the right thing to do.
> > > > > 
> > > > > I dont think i can follow that logic
> > > > > 
> > > > > 
> > > > > > ffprobe (and f_sidedata) are what should be used for actual integrity
> > > > > > checks.
> > > > > 
> > > > > ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable
> > > > > 
> > > > > If you suggest that side data should not be tested in FFmpeg while packet.data
> > > > > should be tested. That position seems inconsistant to me
> > > > > 
> > > > > If you suggest that neither side data nor packet.data should be tested in FFmpeg
> > > > > iam confident that there would be a majority disagreeing.
> > > > > 
> > > > > f_sidedata is not at the output of ffmpeg so even if it could test it, it
> > > > > does not test the ffmpeg output.
> > > > > We also dont replace running md5sum and framecrc on ffmpeg output by a bitstream
> > > > > filter.
> > > > > 
> > > > > Again, there is need to test what comes out of FFmpeg, thats at the muxer level
> > > > > thats what framecrcenc does.
> > > > 
> > > > There is also an additional aspect
> > > > and that is efficiency or "time taken by all fate tests"
> > > > framecrcenc already has all the side data, it costs basically 0 time to print that
> > > > 
> > > > any ffprobe based check needs to run everything a 2nd time, so it will be slower
> > > > 
> > > > also ffprobe is only good for side data from the demuxer.
> > > > my patch tests all cases including side data from the encoder or any other
> > > > source that gets forwarded to the muxer in each testcase.
> > > 
> > > We could extend showinfo_bsf to print side data information.
> > 
> > Well, you argued a moment ago that its too much code (in framecrcenc)
> > its not going to be less code if the same or more detailed information
> > is printed in a showinfo_bsf
> > 
> > again, my suggestion is that this code should go to where side data is
> > and then showinfo_bsf, framecrcenc and ffprobe can use it
> 
> I mean, showinfo_bsf could be adapted in a way ffprobe can invoke/parse, so
> all the related ffprobe code can be moved there.

do you agree that framecrcenc should show side data in a way to allow
detecting changes, as it also does with the main packet data ?
Its perfectly fine with me if that invokes the same code as showinfo_bsf

thx

[...]
Anton Khirnov May 31, 2024, 7:32 a.m. UTC | #20
Quoting Michael Niedermayer (2024-05-27 20:11:05)
> If you block this solution without providing another solution
> then i will bring this to the technical committee, to seek its guidance
> on the way forward.

The solution is to use a tool appropriate for the purpose, like ffprobe.
Anton Khirnov May 31, 2024, 7:39 a.m. UTC | #21
Quoting James Almer (2024-05-27 16:11:13)
> On 5/27/2024 5:15 AM, Anton Khirnov wrote:
> > Quoting Michael Niedermayer (2024-04-27 02:36:23)
> >> This allows detecting issues in side data related code, same as what
> >> framecrc does for before already for packet data itself.
> >>
> >> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> >> ---
> > 
> > I am against this patch. Checksumming side data is a fundamentally wrong
> > thing to do.
> 
> framehash should be updated to also not print hashes, then. Problem is 
> that it's versioned, so we would need to "deprecate" the current versions.
> 
> There's also the issue of printing sizes, which for some structs (iamf, 
> video_enc_params) it can vary depending on target, so my suggestion was 
> adding an option to disable printing certain values like it. What do you 
> think?

I agree. It's another aspect of the same issue - binary representation
of side data is not guaranteed to be the same everywhere.
diff mbox series

Patch

diff --git a/libavformat/framecrcenc.c b/libavformat/framecrcenc.c
index ce306a6c498..e71bfbd8777 100644
--- a/libavformat/framecrcenc.c
+++ b/libavformat/framecrcenc.c
@@ -21,8 +21,10 @@ 
 
 #include <inttypes.h>
 
+#include "config.h"
 #include "libavutil/adler32.h"
 #include "libavutil/avstring.h"
+#include "libavutil/intreadwrite.h"
 
 #include "libavcodec/codec_id.h"
 #include "libavcodec/codec_par.h"
@@ -48,6 +50,17 @@  static int framecrc_write_header(struct AVFormatContext *s)
     return ff_framehash_write_header(s);
 }
 
+static av_unused void inline bswap(char *buf, int offset, int size)
+{
+    if (size == 8) {
+        uint64_t val = AV_RN64(buf + offset);
+        AV_WN64(buf + offset, av_bswap64(val));
+    } else if (size == 4) {
+        uint32_t val = AV_RN32(buf + offset);
+        AV_WN32(buf + offset, av_bswap32(val));
+    }
+}
+
 static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
 {
     uint32_t crc = av_adler32_update(0, pkt->data, pkt->size);
@@ -58,11 +71,68 @@  static int framecrc_write_packet(struct AVFormatContext *s, AVPacket *pkt)
     if (pkt->flags != AV_PKT_FLAG_KEY)
         av_strlcatf(buf, sizeof(buf), ", F=0x%0X", pkt->flags);
     if (pkt->side_data_elems) {
+        int i;
         av_strlcatf(buf, sizeof(buf), ", S=%d", pkt->side_data_elems);
 
-        for (int i = 0; i < pkt->side_data_elems; i++) {
-            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER,
-                        pkt->side_data[i].size);
+        for (i=0; i<pkt->side_data_elems; i++) {
+            const AVPacketSideData *const sd = &pkt->side_data[i];
+            const uint8_t *data = sd->data;
+            uint32_t side_data_crc = 0;
+
+            switch (sd->type) {
+#if HAVE_BIGENDIAN
+                uint8_t bswap_buf[FFMAX(sizeof(AVCPBProperties),
+                                        sizeof(AVProducerReferenceTime))];
+            case AV_PKT_DATA_PALETTE:
+            case AV_PKT_DATA_REPLAYGAIN:
+            case AV_PKT_DATA_DISPLAYMATRIX:
+            case AV_PKT_DATA_STEREO3D:
+            case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
+            case AV_PKT_DATA_FALLBACK_TRACK:
+            case AV_PKT_DATA_MASTERING_DISPLAY_METADATA:
+            case AV_PKT_DATA_SPHERICAL:
+            case AV_PKT_DATA_CONTENT_LIGHT_LEVEL:
+            case AV_PKT_DATA_S12M_TIMECODE:
+                for (size_t j = 0; j < sd->size / 4; j++) {
+                    uint8_t buf[4];
+                    AV_WL32(buf, AV_RB32(sd->data + 4 * j));
+                    side_data_crc = av_adler32_update(side_data_crc, buf, 4);
+                }
+                break;
+            case AV_PKT_DATA_CPB_PROPERTIES:
+#define BSWAP(struct, field) bswap(bswap_buf, offsetof(struct, field), sizeof(((struct){0}).field))
+                if (sd->size == sizeof(AVCPBProperties)) {
+                    memcpy(bswap_buf, sd->data, sizeof(AVCPBProperties));
+                    data = bswap_buf;
+                    BSWAP(AVCPBProperties, max_bitrate);
+                    BSWAP(AVCPBProperties, min_bitrate);
+                    BSWAP(AVCPBProperties, avg_bitrate);
+                    BSWAP(AVCPBProperties, buffer_size);
+                    BSWAP(AVCPBProperties, vbv_delay);
+                }
+                goto pod;
+            case AV_PKT_DATA_PRFT:
+                if (sd->size == sizeof(AVProducerReferenceTime)) {
+                    memcpy(bswap_buf, sd->data, sizeof(AVProducerReferenceTime));
+                    data = bswap_buf;
+                    BSWAP(AVProducerReferenceTime, wallclock);
+                    BSWAP(AVProducerReferenceTime, flags);
+                }
+                goto pod;
+            pod:
+#endif
+
+            default:
+                side_data_crc = av_adler32_update(0, data, sd->size);
+                break;
+            case AV_PKT_DATA_IAMF_MIX_GAIN_PARAM:
+            case AV_PKT_DATA_IAMF_DEMIXING_INFO_PARAM:
+            case AV_PKT_DATA_IAMF_RECON_GAIN_INFO_PARAM:
+                side_data_crc = 0;
+            }
+
+            av_strlcatf(buf, sizeof(buf), ", %8"SIZE_SPECIFIER", 0x%08"PRIx32,
+                        pkt->side_data[i].size, side_data_crc);
         }
     }
     av_strlcatf(buf, sizeof(buf), "\n");
diff --git a/tests/ref/fate/autorotate b/tests/ref/fate/autorotate
index 2aa29fafa70..1cf066beb2f 100644
--- a/tests/ref/fate/autorotate
+++ b/tests/ref/fate/autorotate
@@ -12,7 +12,7 @@ 
 #sample_rate 1: 44100
 #channel_layout_name 1: mono
 0,       -512,          0,      512,     6997, 0x55c700f6
-1,       -256,       -256,     1536,      416, 0x92ddc529, S=1,       10
+1,       -256,       -256,     1536,      416, 0x92ddc529, S=1,       10, 0x00090001
 0,          0,        512,      512,     4847, 0xe74f522e, F=0x0
 1,       1280,       1280,     1536,      418, 0x0a7fcd2d
 0,        512,       1024,      512,     5281, 0xbd4a5dac, F=0x0
diff --git a/tests/ref/fate/cover-art-mp3-id3v2-remux b/tests/ref/fate/cover-art-mp3-id3v2-remux
index 52b7e72a569..653b60984e4 100644
--- a/tests/ref/fate/cover-art-mp3-id3v2-remux
+++ b/tests/ref/fate/cover-art-mp3-id3v2-remux
@@ -20,7 +20,7 @@ 
 #codec_id 3: png
 #dimensions 3: 263x263
 #sar 3: 1/1
-0,    -353590,    -353590,   368640,      417, 0x15848290, S=1,       10
+0,    -353590,    -353590,   368640,      417, 0x15848290, S=1,       10, 0x034e0055
 1,          0,          0,        0,   208350, 0x291b44d1
 2,          0,          0,        0,    15760, 0x71d5c418
 3,          0,          0,        0,   165671, 0x7c1c8070
diff --git a/tests/ref/fate/ffmpeg-bsf-input b/tests/ref/fate/ffmpeg-bsf-input
index 67dd57cf6db..236d95728c6 100644
--- a/tests/ref/fate/ffmpeg-bsf-input
+++ b/tests/ref/fate/ffmpeg-bsf-input
@@ -6,13 +6,13 @@ 
 #sar 0: 1/1
 0,          0,          0,        1,     2108, 0x57c38f64
 0,          2,          2,        1,       31, 0xabe10d25, F=0x0
-0,          4,          4,        1,     1915, 0xd430347f, S=1,      109
+0,          4,          4,        1,     1915, 0xd430347f, S=1,      109, 0xcbe915dc
 0,          6,          6,        1,       35, 0xc4ad0d4c, F=0x0
-0,          8,          8,        1,     2108, 0x57c38f64, S=1,      110
+0,          8,          8,        1,     2108, 0x57c38f64, S=1,      110, 0xb4031479
 0,         10,         10,        1,       31, 0xabe10d25, F=0x0
-0,         12,         12,        1,     1915, 0xd430347f, S=1,      109
+0,         12,         12,        1,     1915, 0xd430347f, S=1,      109, 0xcbe915dc
 0,         14,         14,        1,       35, 0xc4ad0d4c, F=0x0
-0,         16,         16,        1,     2108, 0x57c38f64, S=1,      110
+0,         16,         16,        1,     2108, 0x57c38f64, S=1,      110, 0xb4031479
 0,         18,         18,        1,       31, 0xabe10d25, F=0x0
-0,         20,         20,        1,     1915, 0xd430347f, S=1,      109
+0,         20,         20,        1,     1915, 0xd430347f, S=1,      109, 0xcbe915dc
 0,         22,         22,        1,       35, 0xc4ad0d4c, F=0x0
diff --git a/tests/ref/fate/force_key_frames-source b/tests/ref/fate/force_key_frames-source
index 87a35e2d2cf..85679b87d69 100644
--- a/tests/ref/fate/force_key_frames-source
+++ b/tests/ref/fate/force_key_frames-source
@@ -3,395 +3,395 @@ 
 #codec_id 0: mpeg2video
 #dimensions 0: 2x2
 #sar 0: 0/1
-0,         -1,          0,        1,       57, 0x7db00eb7, S=1,        8
-0,          0,          1,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,          1,          2,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,          2,          3,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,          3,          4,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,          4,          5,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,          5,          6,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,          6,          7,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,          7,          8,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,          8,          9,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,          9,         10,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,         10,         11,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,         11,         12,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,         12,         13,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,         13,         14,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,         14,         15,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,         15,         16,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,         16,         17,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,         17,         18,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,         18,         19,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,         19,         20,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,         20,         21,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,         21,         22,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,         22,         23,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,         23,         24,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,         24,         25,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,         25,         26,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,         26,         27,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,         27,         28,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,         28,         29,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,         29,         30,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,         30,         31,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,         31,         32,        1,       24, 0x4afc0628, F=0x0, S=1,        8
-0,         32,         33,        1,       24, 0x4fbc0668, F=0x0, S=1,        8
-0,         33,         34,        1,       24, 0x547c06a8, F=0x0, S=1,        8
-0,         34,         35,        1,       24, 0x593c06e8, F=0x0, S=1,        8
-0,         35,         36,        1,       24, 0x4b100629, F=0x0, S=1,        8
-0,         36,         37,        1,       24, 0x4fd00669, F=0x0, S=1,        8
-0,         37,         38,        1,       24, 0x549006a9, F=0x0, S=1,        8
-0,         38,         39,        1,       24, 0x595006e9, F=0x0, S=1,        8
-0,         39,         40,        1,       24, 0x4b24062a, F=0x0, S=1,        8
-0,         40,         41,        1,       24, 0x4fe4066a, F=0x0, S=1,        8
-0,         41,         42,        1,       24, 0x54a406aa, F=0x0, S=1,        8
-0,         42,         43,        1,       24, 0x596406ea, F=0x0, S=1,        8
-0,         43,         44,        1,       24, 0x4b38062b, F=0x0, S=1,        8
-0,         44,         45,        1,       24, 0x4ff8066b, F=0x0, S=1,        8
-0,         45,         46,        1,       24, 0x54b806ab, F=0x0, S=1,        8
-0,         46,         47,        1,       24, 0x597806eb, F=0x0, S=1,        8
-0,         47,         48,        1,       24, 0x4b4c062c, F=0x0, S=1,        8
-0,         48,         49,        1,       24, 0x500c066c, F=0x0, S=1,        8
-0,         49,         50,        1,       24, 0x54cc06ac, F=0x0, S=1,        8
-0,         50,         51,        1,       24, 0x598c06ec, F=0x0, S=1,        8
-0,         51,         52,        1,       24, 0x4b60062d, F=0x0, S=1,        8
-0,         52,         53,        1,       24, 0x5020066d, F=0x0, S=1,        8
-0,         53,         54,        1,       24, 0x54e006ad, F=0x0, S=1,        8
-0,         54,         55,        1,       24, 0x59a006ed, F=0x0, S=1,        8
-0,         55,         56,        1,       24, 0x4b74062e, F=0x0, S=1,        8
-0,         56,         57,        1,       24, 0x5034066e, F=0x0, S=1,        8
-0,         57,         58,        1,       24, 0x54f406ae, F=0x0, S=1,        8
-0,         58,         59,        1,       24, 0x59b406ee, F=0x0, S=1,        8
-0,         59,         60,        1,       24, 0x4b88062f, F=0x0, S=1,        8
-0,         60,         61,        1,       24, 0x5048066f, F=0x0, S=1,        8
-0,         61,         62,        1,       24, 0x550806af, F=0x0, S=1,        8
-0,         62,         63,        1,       24, 0x59c806ef, F=0x0, S=1,        8
-0,         63,         64,        1,       24, 0x4b9c0630, F=0x0, S=1,        8
-0,         64,         65,        1,       24, 0x505c0670, F=0x0, S=1,        8
-0,         65,         66,        1,       24, 0x551c06b0, F=0x0, S=1,        8
-0,         66,         67,        1,       24, 0x59dc06f0, F=0x0, S=1,        8
-0,         67,         68,        1,       24, 0x4bb00631, F=0x0, S=1,        8
-0,         68,         69,        1,       24, 0x50700671, F=0x0, S=1,        8
-0,         69,         70,        1,       24, 0x553006b1, F=0x0, S=1,        8
-0,         70,         71,        1,       24, 0x59f006f1, F=0x0, S=1,        8
-0,         71,         72,        1,       24, 0x4bc40632, F=0x0, S=1,        8
-0,         72,         73,        1,       24, 0x50840672, F=0x0, S=1,        8
-0,         73,         74,        1,       24, 0x554406b2, F=0x0, S=1,        8
-0,         74,         75,        1,       24, 0x5a0406f2, F=0x0, S=1,        8
-0,         75,         76,        1,       24, 0x4bd80633, F=0x0, S=1,        8
-0,         76,         77,        1,       24, 0x50980673, F=0x0, S=1,        8
-0,         77,         78,        1,       24, 0x555806b3, F=0x0, S=1,        8
-0,         78,         79,        1,       24, 0x5a1806f3, F=0x0, S=1,        8
-0,         79,         80,        1,       24, 0x4bec0634, F=0x0, S=1,        8
-0,         80,         81,        1,       24, 0x50ac0674, F=0x0, S=1,        8
-0,         81,         82,        1,       24, 0x556c06b4, F=0x0, S=1,        8
-0,         82,         83,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8
-0,         83,         84,        1,       24, 0x4c000635, F=0x0, S=1,        8
-0,         84,         85,        1,       24, 0x50c00675, F=0x0, S=1,        8
-0,         85,         86,        1,       24, 0x558006b5, F=0x0, S=1,        8
-0,         86,         87,        1,       24, 0x5a4006f5, F=0x0, S=1,        8
-0,         87,         88,        1,       24, 0x4c140636, F=0x0, S=1,        8
-0,         88,         89,        1,       24, 0x50d40676, F=0x0, S=1,        8
-0,         89,         90,        1,       24, 0x559406b6, F=0x0, S=1,        8
-0,         90,         91,        1,       24, 0x5a5406f6, F=0x0, S=1,        8
-0,         91,         92,        1,       24, 0x4c280637, F=0x0, S=1,        8
-0,         92,         93,        1,       24, 0x50e80677, F=0x0, S=1,        8
-0,         93,         94,        1,       24, 0x55a806b7, F=0x0, S=1,        8
-0,         94,         95,        1,       24, 0x5a6806f7, F=0x0, S=1,        8
-0,         95,         96,        1,       24, 0x4c3c0638, F=0x0, S=1,        8
-0,         96,         97,        1,       24, 0x50fc0678, F=0x0, S=1,        8
-0,         97,         98,        1,       24, 0x55bc06b8, F=0x0, S=1,        8
-0,         98,         99,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8
-0,         99,        100,        1,       24, 0x4c500639, F=0x0, S=1,        8
-0,        100,        101,        1,       24, 0x51100679, F=0x0, S=1,        8
-0,        101,        102,        1,       24, 0x55d006b9, F=0x0, S=1,        8
-0,        102,        103,        1,       24, 0x5a9006f9, F=0x0, S=1,        8
-0,        103,        104,        1,       24, 0x4c64063a, F=0x0, S=1,        8
-0,        104,        105,        1,       24, 0x5124067a, F=0x0, S=1,        8
-0,        105,        106,        1,       24, 0x55e406ba, F=0x0, S=1,        8
-0,        106,        107,        1,       24, 0x5aa406fa, F=0x0, S=1,        8
-0,        107,        108,        1,       57, 0x85a40efb, S=1,        8
-0,        108,        109,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,        109,        110,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,        110,        111,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,        111,        112,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,        112,        113,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,        113,        114,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,        114,        115,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,        115,        116,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,        116,        117,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,        117,        118,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,        118,        119,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,        119,        120,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,        120,        121,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,        121,        122,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,        122,        123,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,        123,        124,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,        124,        125,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,        125,        126,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,        126,        127,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,        127,        128,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,        128,        129,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,        129,        130,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,        130,        131,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,        131,        132,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,        132,        133,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,        133,        134,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,        134,        135,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,        135,        136,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,        136,        137,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,        137,        138,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,        138,        139,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,        139,        140,        1,       24, 0x4afc0628, F=0x0, S=1,        8
-0,        140,        141,        1,       24, 0x4fbc0668, F=0x0, S=1,        8
-0,        141,        142,        1,       24, 0x547c06a8, F=0x0, S=1,        8
-0,        142,        143,        1,       24, 0x593c06e8, F=0x0, S=1,        8
-0,        143,        144,        1,       24, 0x4b100629, F=0x0, S=1,        8
-0,        144,        145,        1,       24, 0x4fd00669, F=0x0, S=1,        8
-0,        145,        146,        1,       24, 0x549006a9, F=0x0, S=1,        8
-0,        146,        147,        1,       24, 0x595006e9, F=0x0, S=1,        8
-0,        147,        148,        1,       24, 0x4b24062a, F=0x0, S=1,        8
-0,        148,        149,        1,       24, 0x4fe4066a, F=0x0, S=1,        8
-0,        149,        150,        1,       24, 0x54a406aa, F=0x0, S=1,        8
-0,        150,        151,        1,       24, 0x596406ea, F=0x0, S=1,        8
-0,        151,        152,        1,       24, 0x4b38062b, F=0x0, S=1,        8
-0,        152,        153,        1,       24, 0x4ff8066b, F=0x0, S=1,        8
-0,        153,        154,        1,       24, 0x54b806ab, F=0x0, S=1,        8
-0,        154,        155,        1,       24, 0x597806eb, F=0x0, S=1,        8
-0,        155,        156,        1,       24, 0x4b4c062c, F=0x0, S=1,        8
-0,        156,        157,        1,       24, 0x500c066c, F=0x0, S=1,        8
-0,        157,        158,        1,       24, 0x54cc06ac, F=0x0, S=1,        8
-0,        158,        159,        1,       24, 0x598c06ec, F=0x0, S=1,        8
-0,        159,        160,        1,       24, 0x4b60062d, F=0x0, S=1,        8
-0,        160,        161,        1,       24, 0x5020066d, F=0x0, S=1,        8
-0,        161,        162,        1,       24, 0x54e006ad, F=0x0, S=1,        8
-0,        162,        163,        1,       24, 0x59a006ed, F=0x0, S=1,        8
-0,        163,        164,        1,       24, 0x4b74062e, F=0x0, S=1,        8
-0,        164,        165,        1,       24, 0x5034066e, F=0x0, S=1,        8
-0,        165,        166,        1,       24, 0x54f406ae, F=0x0, S=1,        8
-0,        166,        167,        1,       24, 0x59b406ee, F=0x0, S=1,        8
-0,        167,        168,        1,       24, 0x4b88062f, F=0x0, S=1,        8
-0,        168,        169,        1,       24, 0x5048066f, F=0x0, S=1,        8
-0,        169,        170,        1,       24, 0x550806af, F=0x0, S=1,        8
-0,        170,        171,        1,       24, 0x59c806ef, F=0x0, S=1,        8
-0,        171,        172,        1,       24, 0x4b9c0630, F=0x0, S=1,        8
-0,        172,        173,        1,       24, 0x505c0670, F=0x0, S=1,        8
-0,        173,        174,        1,       24, 0x551c06b0, F=0x0, S=1,        8
-0,        174,        175,        1,       24, 0x59dc06f0, F=0x0, S=1,        8
-0,        175,        176,        1,       24, 0x4bb00631, F=0x0, S=1,        8
-0,        176,        177,        1,       24, 0x50700671, F=0x0, S=1,        8
-0,        177,        178,        1,       24, 0x553006b1, F=0x0, S=1,        8
-0,        178,        179,        1,       24, 0x59f006f1, F=0x0, S=1,        8
-0,        179,        180,        1,       24, 0x4bc40632, F=0x0, S=1,        8
-0,        180,        181,        1,       24, 0x50840672, F=0x0, S=1,        8
-0,        181,        182,        1,       24, 0x554406b2, F=0x0, S=1,        8
-0,        182,        183,        1,       24, 0x5a0406f2, F=0x0, S=1,        8
-0,        183,        184,        1,       24, 0x4bd80633, F=0x0, S=1,        8
-0,        184,        185,        1,       24, 0x50980673, F=0x0, S=1,        8
-0,        185,        186,        1,       24, 0x555806b3, F=0x0, S=1,        8
-0,        186,        187,        1,       24, 0x5a1806f3, F=0x0, S=1,        8
-0,        187,        188,        1,       24, 0x4bec0634, F=0x0, S=1,        8
-0,        188,        189,        1,       24, 0x50ac0674, F=0x0, S=1,        8
-0,        189,        190,        1,       24, 0x556c06b4, F=0x0, S=1,        8
-0,        190,        191,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8
-0,        191,        192,        1,       24, 0x4c000635, F=0x0, S=1,        8
-0,        192,        193,        1,       24, 0x50c00675, F=0x0, S=1,        8
-0,        193,        194,        1,       24, 0x558006b5, F=0x0, S=1,        8
-0,        194,        195,        1,       24, 0x5a4006f5, F=0x0, S=1,        8
-0,        195,        196,        1,       24, 0x4c140636, F=0x0, S=1,        8
-0,        196,        197,        1,       24, 0x50d40676, F=0x0, S=1,        8
-0,        197,        198,        1,       24, 0x559406b6, F=0x0, S=1,        8
-0,        198,        199,        1,       24, 0x5a5406f6, F=0x0, S=1,        8
-0,        199,        200,        1,       24, 0x4c280637, F=0x0, S=1,        8
-0,        200,        201,        1,       24, 0x50e80677, F=0x0, S=1,        8
-0,        201,        202,        1,       24, 0x55a806b7, F=0x0, S=1,        8
-0,        202,        203,        1,       24, 0x5a6806f7, F=0x0, S=1,        8
-0,        203,        204,        1,       24, 0x4c3c0638, F=0x0, S=1,        8
-0,        204,        205,        1,       24, 0x50fc0678, F=0x0, S=1,        8
-0,        205,        206,        1,       24, 0x55bc06b8, F=0x0, S=1,        8
-0,        206,        207,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8
-0,        207,        208,        1,       24, 0x4c500639, F=0x0, S=1,        8
-0,        208,        209,        1,       24, 0x51100679, F=0x0, S=1,        8
-0,        209,        210,        1,       24, 0x55d006b9, F=0x0, S=1,        8
-0,        210,        211,        1,       24, 0x5a9006f9, F=0x0, S=1,        8
-0,        211,        212,        1,       24, 0x4c64063a, F=0x0, S=1,        8
-0,        212,        213,        1,       24, 0x5124067a, F=0x0, S=1,        8
-0,        213,        214,        1,       24, 0x55e406ba, F=0x0, S=1,        8
-0,        214,        215,        1,       24, 0x5aa406fa, F=0x0, S=1,        8
-0,        215,        216,        1,       24, 0x4c78063b, F=0x0, S=1,        8
-0,        216,        217,        1,       24, 0x5138067b, F=0x0, S=1,        8
-0,        217,        218,        1,       24, 0x55f806bb, F=0x0, S=1,        8
-0,        218,        219,        1,       24, 0x5ab806fb, F=0x0, S=1,        8
-0,        219,        220,        1,       24, 0x4c8c063c, F=0x0, S=1,        8
-0,        220,        221,        1,       24, 0x514c067c, F=0x0, S=1,        8
-0,        221,        222,        1,       24, 0x560c06bc, F=0x0, S=1,        8
-0,        222,        223,        1,       24, 0x5acc06fc, F=0x0, S=1,        8
-0,        223,        224,        1,       24, 0x4ca0063d, F=0x0, S=1,        8
-0,        224,        225,        1,       24, 0x5160067d, F=0x0, S=1,        8
-0,        225,        226,        1,       24, 0x562006bd, F=0x0, S=1,        8
-0,        226,        227,        1,       24, 0x5ae006fd, F=0x0, S=1,        8
-0,        227,        228,        1,       24, 0x4cb4063e, F=0x0, S=1,        8
-0,        228,        229,        1,       24, 0x5174067e, F=0x0, S=1,        8
-0,        229,        230,        1,       24, 0x563406be, F=0x0, S=1,        8
-0,        230,        231,        1,       24, 0x5af406fe, F=0x0, S=1,        8
-0,        231,        232,        1,       24, 0x4cc8063f, F=0x0, S=1,        8
-0,        232,        233,        1,       24, 0x5188067f, F=0x0, S=1,        8
-0,        233,        234,        1,       24, 0x564806bf, F=0x0, S=1,        8
-0,        234,        235,        1,       24, 0x5b0806ff, F=0x0, S=1,        8
-0,        235,        236,        1,       24, 0x4cdc0640, F=0x0, S=1,        8
-0,        236,        237,        1,       24, 0x519c0680, F=0x0, S=1,        8
-0,        237,        238,        1,       24, 0x565c06c0, F=0x0, S=1,        8
-0,        238,        239,        1,       24, 0x5b1c0700, F=0x0, S=1,        8
-0,        239,        240,        1,       24, 0x4cf00641, F=0x0, S=1,        8
-0,        240,        241,        1,       24, 0x51b00681, F=0x0, S=1,        8
-0,        241,        242,        1,       24, 0x567006c1, F=0x0, S=1,        8
-0,        242,        243,        1,       24, 0x5b300701, F=0x0, S=1,        8
-0,        243,        244,        1,       24, 0x4d040642, F=0x0, S=1,        8
-0,        244,        245,        1,       24, 0x51c40682, F=0x0, S=1,        8
-0,        245,        246,        1,       24, 0x568406c2, F=0x0, S=1,        8
-0,        246,        247,        1,       24, 0x5b440702, F=0x0, S=1,        8
-0,        247,        248,        1,       24, 0x4d180643, F=0x0, S=1,        8
-0,        248,        249,        1,       24, 0x51d80683, F=0x0, S=1,        8
-0,        249,        250,        1,       24, 0x569806c3, F=0x0, S=1,        8
-0,        250,        251,        1,       24, 0x5b580703, F=0x0, S=1,        8
-0,        251,        252,        1,       24, 0x4d2c0644, F=0x0, S=1,        8
-0,        252,        253,        1,       24, 0x51ec0684, F=0x0, S=1,        8
-0,        253,        254,        1,       24, 0x56ac06c4, F=0x0, S=1,        8
-0,        254,        255,        1,       24, 0x5b6c0704, F=0x0, S=1,        8
-0,        255,        256,        1,       24, 0x4d400645, F=0x0, S=1,        8
-0,        256,        257,        1,       24, 0x52000685, F=0x0, S=1,        8
-0,        257,        258,        1,       24, 0x56c006c5, F=0x0, S=1,        8
-0,        258,        259,        1,       24, 0x5b800705, F=0x0, S=1,        8
-0,        259,        260,        1,       24, 0x4d540646, F=0x0, S=1,        8
-0,        260,        261,        1,       24, 0x52140686, F=0x0, S=1,        8
-0,        261,        262,        1,       24, 0x56d406c6, F=0x0, S=1,        8
-0,        262,        263,        1,       24, 0x5b940706, F=0x0, S=1,        8
-0,        263,        264,        1,       24, 0x4d680647, F=0x0, S=1,        8
-0,        264,        265,        1,       24, 0x52280687, F=0x0, S=1,        8
-0,        265,        266,        1,       24, 0x56e806c7, F=0x0, S=1,        8
-0,        266,        267,        1,       24, 0x5ba80707, F=0x0, S=1,        8
-0,        267,        268,        1,       24, 0x4d7c0648, F=0x0, S=1,        8
-0,        268,        269,        1,       24, 0x523c0688, F=0x0, S=1,        8
-0,        269,        270,        1,       24, 0x56fc06c8, F=0x0, S=1,        8
-0,        270,        271,        1,       24, 0x5bbc0708, F=0x0, S=1,        8
-0,        271,        272,        1,       24, 0x4d900649, F=0x0, S=1,        8
-0,        272,        273,        1,       24, 0x52500689, F=0x0, S=1,        8
-0,        273,        274,        1,       24, 0x571006c9, F=0x0, S=1,        8
-0,        274,        275,        1,       24, 0x5bd00709, F=0x0, S=1,        8
-0,        275,        276,        1,       24, 0x4da4064a, F=0x0, S=1,        8
-0,        276,        277,        1,       24, 0x5264068a, F=0x0, S=1,        8
-0,        277,        278,        1,       24, 0x572406ca, F=0x0, S=1,        8
-0,        278,        279,        1,       24, 0x5be4070a, F=0x0, S=1,        8
-0,        279,        280,        1,       24, 0x4db8064b, F=0x0, S=1,        8
-0,        280,        281,        1,       24, 0x5278068b, F=0x0, S=1,        8
-0,        281,        282,        1,       24, 0x573806cb, F=0x0, S=1,        8
-0,        282,        283,        1,       24, 0x5bf8070b, F=0x0, S=1,        8
-0,        283,        284,        1,       24, 0x4dcc064c, F=0x0, S=1,        8
-0,        284,        285,        1,       24, 0x528c068c, F=0x0, S=1,        8
-0,        285,        286,        1,       24, 0x574c06cc, F=0x0, S=1,        8
-0,        286,        287,        1,       24, 0x5c0c070c, F=0x0, S=1,        8
-0,        287,        288,        1,       24, 0x4de0064d, F=0x0, S=1,        8
-0,        288,        289,        1,       24, 0x52a0068d, F=0x0, S=1,        8
-0,        289,        290,        1,       24, 0x576006cd, F=0x0, S=1,        8
-0,        290,        291,        1,       24, 0x5c20070d, F=0x0, S=1,        8
-0,        291,        292,        1,       24, 0x4df4064e, F=0x0, S=1,        8
-0,        292,        293,        1,       24, 0x52b4068e, F=0x0, S=1,        8
-0,        293,        294,        1,       24, 0x577406ce, F=0x0, S=1,        8
-0,        294,        295,        1,       24, 0x5c34070e, F=0x0, S=1,        8
-0,        295,        296,        1,       24, 0x4e08064f, F=0x0, S=1,        8
-0,        296,        297,        1,       24, 0x52c8068f, F=0x0, S=1,        8
-0,        297,        298,        1,       24, 0x578806cf, F=0x0, S=1,        8
-0,        298,        299,        1,       24, 0x5c48070f, F=0x0, S=1,        8
-0,        299,        300,        1,       24, 0x4e1c0650, F=0x0, S=1,        8
-0,        300,        301,        1,       24, 0x52dc0690, F=0x0, S=1,        8
-0,        301,        302,        1,       24, 0x579c06d0, F=0x0, S=1,        8
-0,        302,        303,        1,       24, 0x5c5c0710, F=0x0, S=1,        8
-0,        303,        304,        1,       24, 0x4e300651, F=0x0, S=1,        8
-0,        304,        305,        1,       24, 0x52f00691, F=0x0, S=1,        8
-0,        305,        306,        1,       24, 0x57b006d1, F=0x0, S=1,        8
-0,        306,        307,        1,       24, 0x5c700711, F=0x0, S=1,        8
-0,        307,        308,        1,       24, 0x4e440652, F=0x0, S=1,        8
-0,        308,        309,        1,       24, 0x53040692, F=0x0, S=1,        8
-0,        309,        310,        1,       24, 0x57c406d2, F=0x0, S=1,        8
-0,        310,        311,        1,       24, 0x5c840712, F=0x0, S=1,        8
-0,        311,        312,        1,       24, 0x4e580653, F=0x0, S=1,        8
-0,        312,        313,        1,       24, 0x53180693, F=0x0, S=1,        8
-0,        313,        314,        1,       24, 0x57d806d3, F=0x0, S=1,        8
-0,        314,        315,        1,       24, 0x5c980713, F=0x0, S=1,        8
-0,        315,        316,        1,       24, 0x4e6c0654, F=0x0, S=1,        8
-0,        316,        317,        1,       24, 0x532c0694, F=0x0, S=1,        8
-0,        317,        318,        1,       24, 0x57ec06d4, F=0x0, S=1,        8
-0,        318,        319,        1,       24, 0x5cac0714, F=0x0, S=1,        8
-0,        319,        320,        1,       24, 0x4e800655, F=0x0, S=1,        8
-0,        320,        321,        1,       24, 0x53400695, F=0x0, S=1,        8
-0,        321,        322,        1,       24, 0x580006d5, F=0x0, S=1,        8
-0,        322,        323,        1,       24, 0x5cc00715, F=0x0, S=1,        8
-0,        323,        324,        1,       24, 0x4e940656, F=0x0, S=1,        8
-0,        324,        325,        1,       24, 0x53540696, F=0x0, S=1,        8
-0,        325,        326,        1,       24, 0x581406d6, F=0x0, S=1,        8
-0,        326,        327,        1,       24, 0x5cd40716, F=0x0, S=1,        8
-0,        327,        328,        1,       24, 0x4ea80657, F=0x0, S=1,        8
-0,        328,        329,        1,       24, 0x53680697, F=0x0, S=1,        8
-0,        329,        330,        1,       24, 0x582806d7, F=0x0, S=1,        8
-0,        330,        331,        1,       24, 0x5ce80717, F=0x0, S=1,        8
-0,        331,        332,        1,       24, 0x4ebc0658, F=0x0, S=1,        8
-0,        332,        333,        1,       24, 0x537c0698, F=0x0, S=1,        8
-0,        333,        334,        1,       24, 0x583c06d8, F=0x0, S=1,        8
-0,        334,        335,        1,       24, 0x5cfc0718, F=0x0, S=1,        8
-0,        335,        336,        1,       24, 0x4ed00659, F=0x0, S=1,        8
-0,        336,        337,        1,       57, 0x899c0f1e, S=1,        8
-0,        337,        338,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,        338,        339,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,        339,        340,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,        340,        341,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,        341,        342,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,        342,        343,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,        343,        344,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,        344,        345,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,        345,        346,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,        346,        347,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,        347,        348,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,        348,        349,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,        349,        350,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,        350,        351,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,        351,        352,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,        352,        353,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,        353,        354,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,        354,        355,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,        355,        356,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,        356,        357,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,        357,        358,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,        358,        359,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,        359,        360,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,        360,        361,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,        361,        362,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,        362,        363,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,        363,        364,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,        364,        365,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,        365,        366,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,        366,        367,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,        367,        368,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,        368,        369,        1,       57, 0x9b930fc1, S=1,        8
-0,        369,        370,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,        370,        371,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,        371,        372,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,        372,        373,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,        373,        374,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,        374,        375,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,        375,        376,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,        376,        377,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,        377,        378,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,        378,        379,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,        379,        380,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,        380,        381,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,        381,        382,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,        382,        383,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,        383,        384,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,        384,        385,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,        385,        386,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,        386,        387,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,        387,        388,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,        388,        389,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,        389,        390,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,        390,        391,        1,       24, 0x544006a5, F=0x0, S=1,        8
+0,         -1,          0,        1,       57, 0x7db00eb7, S=1,        8, 0x05ec00be
+0,          0,          1,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,          1,          2,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,          2,          3,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,          3,          4,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,          4,          5,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,          5,          6,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,          6,          7,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,          7,          8,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,          8,          9,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,          9,         10,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,         10,         11,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,         11,         12,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,         12,         13,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,         13,         14,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,         14,         15,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,         15,         16,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,         16,         17,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,         17,         18,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,         18,         19,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,         19,         20,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,         20,         21,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,         21,         22,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,         22,         23,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,         23,         24,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,         24,         25,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,         25,         26,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,         26,         27,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,         27,         28,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,         28,         29,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,         29,         30,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,         30,         31,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,         31,         32,        1,       24, 0x4afc0628, F=0x0, S=1,        8, 0x076800ee
+0,         32,         33,        1,       24, 0x4fbc0668, F=0x0, S=1,        8, 0x076800ee
+0,         33,         34,        1,       24, 0x547c06a8, F=0x0, S=1,        8, 0x076800ee
+0,         34,         35,        1,       24, 0x593c06e8, F=0x0, S=1,        8, 0x076800ee
+0,         35,         36,        1,       24, 0x4b100629, F=0x0, S=1,        8, 0x076800ee
+0,         36,         37,        1,       24, 0x4fd00669, F=0x0, S=1,        8, 0x076800ee
+0,         37,         38,        1,       24, 0x549006a9, F=0x0, S=1,        8, 0x076800ee
+0,         38,         39,        1,       24, 0x595006e9, F=0x0, S=1,        8, 0x076800ee
+0,         39,         40,        1,       24, 0x4b24062a, F=0x0, S=1,        8, 0x076800ee
+0,         40,         41,        1,       24, 0x4fe4066a, F=0x0, S=1,        8, 0x076800ee
+0,         41,         42,        1,       24, 0x54a406aa, F=0x0, S=1,        8, 0x076800ee
+0,         42,         43,        1,       24, 0x596406ea, F=0x0, S=1,        8, 0x076800ee
+0,         43,         44,        1,       24, 0x4b38062b, F=0x0, S=1,        8, 0x076800ee
+0,         44,         45,        1,       24, 0x4ff8066b, F=0x0, S=1,        8, 0x076800ee
+0,         45,         46,        1,       24, 0x54b806ab, F=0x0, S=1,        8, 0x076800ee
+0,         46,         47,        1,       24, 0x597806eb, F=0x0, S=1,        8, 0x076800ee
+0,         47,         48,        1,       24, 0x4b4c062c, F=0x0, S=1,        8, 0x076800ee
+0,         48,         49,        1,       24, 0x500c066c, F=0x0, S=1,        8, 0x076800ee
+0,         49,         50,        1,       24, 0x54cc06ac, F=0x0, S=1,        8, 0x076800ee
+0,         50,         51,        1,       24, 0x598c06ec, F=0x0, S=1,        8, 0x076800ee
+0,         51,         52,        1,       24, 0x4b60062d, F=0x0, S=1,        8, 0x076800ee
+0,         52,         53,        1,       24, 0x5020066d, F=0x0, S=1,        8, 0x076800ee
+0,         53,         54,        1,       24, 0x54e006ad, F=0x0, S=1,        8, 0x076800ee
+0,         54,         55,        1,       24, 0x59a006ed, F=0x0, S=1,        8, 0x076800ee
+0,         55,         56,        1,       24, 0x4b74062e, F=0x0, S=1,        8, 0x076800ee
+0,         56,         57,        1,       24, 0x5034066e, F=0x0, S=1,        8, 0x076800ee
+0,         57,         58,        1,       24, 0x54f406ae, F=0x0, S=1,        8, 0x076800ee
+0,         58,         59,        1,       24, 0x59b406ee, F=0x0, S=1,        8, 0x076800ee
+0,         59,         60,        1,       24, 0x4b88062f, F=0x0, S=1,        8, 0x076800ee
+0,         60,         61,        1,       24, 0x5048066f, F=0x0, S=1,        8, 0x076800ee
+0,         61,         62,        1,       24, 0x550806af, F=0x0, S=1,        8, 0x076800ee
+0,         62,         63,        1,       24, 0x59c806ef, F=0x0, S=1,        8, 0x076800ee
+0,         63,         64,        1,       24, 0x4b9c0630, F=0x0, S=1,        8, 0x076800ee
+0,         64,         65,        1,       24, 0x505c0670, F=0x0, S=1,        8, 0x076800ee
+0,         65,         66,        1,       24, 0x551c06b0, F=0x0, S=1,        8, 0x076800ee
+0,         66,         67,        1,       24, 0x59dc06f0, F=0x0, S=1,        8, 0x076800ee
+0,         67,         68,        1,       24, 0x4bb00631, F=0x0, S=1,        8, 0x076800ee
+0,         68,         69,        1,       24, 0x50700671, F=0x0, S=1,        8, 0x076800ee
+0,         69,         70,        1,       24, 0x553006b1, F=0x0, S=1,        8, 0x076800ee
+0,         70,         71,        1,       24, 0x59f006f1, F=0x0, S=1,        8, 0x076800ee
+0,         71,         72,        1,       24, 0x4bc40632, F=0x0, S=1,        8, 0x076800ee
+0,         72,         73,        1,       24, 0x50840672, F=0x0, S=1,        8, 0x076800ee
+0,         73,         74,        1,       24, 0x554406b2, F=0x0, S=1,        8, 0x076800ee
+0,         74,         75,        1,       24, 0x5a0406f2, F=0x0, S=1,        8, 0x076800ee
+0,         75,         76,        1,       24, 0x4bd80633, F=0x0, S=1,        8, 0x076800ee
+0,         76,         77,        1,       24, 0x50980673, F=0x0, S=1,        8, 0x076800ee
+0,         77,         78,        1,       24, 0x555806b3, F=0x0, S=1,        8, 0x076800ee
+0,         78,         79,        1,       24, 0x5a1806f3, F=0x0, S=1,        8, 0x076800ee
+0,         79,         80,        1,       24, 0x4bec0634, F=0x0, S=1,        8, 0x076800ee
+0,         80,         81,        1,       24, 0x50ac0674, F=0x0, S=1,        8, 0x076800ee
+0,         81,         82,        1,       24, 0x556c06b4, F=0x0, S=1,        8, 0x076800ee
+0,         82,         83,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8, 0x076800ee
+0,         83,         84,        1,       24, 0x4c000635, F=0x0, S=1,        8, 0x076800ee
+0,         84,         85,        1,       24, 0x50c00675, F=0x0, S=1,        8, 0x076800ee
+0,         85,         86,        1,       24, 0x558006b5, F=0x0, S=1,        8, 0x076800ee
+0,         86,         87,        1,       24, 0x5a4006f5, F=0x0, S=1,        8, 0x076800ee
+0,         87,         88,        1,       24, 0x4c140636, F=0x0, S=1,        8, 0x076800ee
+0,         88,         89,        1,       24, 0x50d40676, F=0x0, S=1,        8, 0x076800ee
+0,         89,         90,        1,       24, 0x559406b6, F=0x0, S=1,        8, 0x076800ee
+0,         90,         91,        1,       24, 0x5a5406f6, F=0x0, S=1,        8, 0x076800ee
+0,         91,         92,        1,       24, 0x4c280637, F=0x0, S=1,        8, 0x076800ee
+0,         92,         93,        1,       24, 0x50e80677, F=0x0, S=1,        8, 0x076800ee
+0,         93,         94,        1,       24, 0x55a806b7, F=0x0, S=1,        8, 0x076800ee
+0,         94,         95,        1,       24, 0x5a6806f7, F=0x0, S=1,        8, 0x076800ee
+0,         95,         96,        1,       24, 0x4c3c0638, F=0x0, S=1,        8, 0x076800ee
+0,         96,         97,        1,       24, 0x50fc0678, F=0x0, S=1,        8, 0x076800ee
+0,         97,         98,        1,       24, 0x55bc06b8, F=0x0, S=1,        8, 0x076800ee
+0,         98,         99,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8, 0x076800ee
+0,         99,        100,        1,       24, 0x4c500639, F=0x0, S=1,        8, 0x076800ee
+0,        100,        101,        1,       24, 0x51100679, F=0x0, S=1,        8, 0x076800ee
+0,        101,        102,        1,       24, 0x55d006b9, F=0x0, S=1,        8, 0x076800ee
+0,        102,        103,        1,       24, 0x5a9006f9, F=0x0, S=1,        8, 0x076800ee
+0,        103,        104,        1,       24, 0x4c64063a, F=0x0, S=1,        8, 0x076800ee
+0,        104,        105,        1,       24, 0x5124067a, F=0x0, S=1,        8, 0x076800ee
+0,        105,        106,        1,       24, 0x55e406ba, F=0x0, S=1,        8, 0x076800ee
+0,        106,        107,        1,       24, 0x5aa406fa, F=0x0, S=1,        8, 0x076800ee
+0,        107,        108,        1,       57, 0x85a40efb, S=1,        8, 0x05ec00be
+0,        108,        109,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,        109,        110,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,        110,        111,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,        111,        112,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,        112,        113,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,        113,        114,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,        114,        115,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,        115,        116,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,        116,        117,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,        117,        118,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,        118,        119,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,        119,        120,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,        120,        121,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,        121,        122,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,        122,        123,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,        123,        124,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,        124,        125,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,        125,        126,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        126,        127,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,        127,        128,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,        128,        129,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,        129,        130,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,        130,        131,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,        131,        132,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,        132,        133,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,        133,        134,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,        134,        135,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,        135,        136,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,        136,        137,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,        137,        138,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,        138,        139,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,        139,        140,        1,       24, 0x4afc0628, F=0x0, S=1,        8, 0x076800ee
+0,        140,        141,        1,       24, 0x4fbc0668, F=0x0, S=1,        8, 0x076800ee
+0,        141,        142,        1,       24, 0x547c06a8, F=0x0, S=1,        8, 0x076800ee
+0,        142,        143,        1,       24, 0x593c06e8, F=0x0, S=1,        8, 0x076800ee
+0,        143,        144,        1,       24, 0x4b100629, F=0x0, S=1,        8, 0x076800ee
+0,        144,        145,        1,       24, 0x4fd00669, F=0x0, S=1,        8, 0x076800ee
+0,        145,        146,        1,       24, 0x549006a9, F=0x0, S=1,        8, 0x076800ee
+0,        146,        147,        1,       24, 0x595006e9, F=0x0, S=1,        8, 0x076800ee
+0,        147,        148,        1,       24, 0x4b24062a, F=0x0, S=1,        8, 0x076800ee
+0,        148,        149,        1,       24, 0x4fe4066a, F=0x0, S=1,        8, 0x076800ee
+0,        149,        150,        1,       24, 0x54a406aa, F=0x0, S=1,        8, 0x076800ee
+0,        150,        151,        1,       24, 0x596406ea, F=0x0, S=1,        8, 0x076800ee
+0,        151,        152,        1,       24, 0x4b38062b, F=0x0, S=1,        8, 0x076800ee
+0,        152,        153,        1,       24, 0x4ff8066b, F=0x0, S=1,        8, 0x076800ee
+0,        153,        154,        1,       24, 0x54b806ab, F=0x0, S=1,        8, 0x076800ee
+0,        154,        155,        1,       24, 0x597806eb, F=0x0, S=1,        8, 0x076800ee
+0,        155,        156,        1,       24, 0x4b4c062c, F=0x0, S=1,        8, 0x076800ee
+0,        156,        157,        1,       24, 0x500c066c, F=0x0, S=1,        8, 0x076800ee
+0,        157,        158,        1,       24, 0x54cc06ac, F=0x0, S=1,        8, 0x076800ee
+0,        158,        159,        1,       24, 0x598c06ec, F=0x0, S=1,        8, 0x076800ee
+0,        159,        160,        1,       24, 0x4b60062d, F=0x0, S=1,        8, 0x076800ee
+0,        160,        161,        1,       24, 0x5020066d, F=0x0, S=1,        8, 0x076800ee
+0,        161,        162,        1,       24, 0x54e006ad, F=0x0, S=1,        8, 0x076800ee
+0,        162,        163,        1,       24, 0x59a006ed, F=0x0, S=1,        8, 0x076800ee
+0,        163,        164,        1,       24, 0x4b74062e, F=0x0, S=1,        8, 0x076800ee
+0,        164,        165,        1,       24, 0x5034066e, F=0x0, S=1,        8, 0x076800ee
+0,        165,        166,        1,       24, 0x54f406ae, F=0x0, S=1,        8, 0x076800ee
+0,        166,        167,        1,       24, 0x59b406ee, F=0x0, S=1,        8, 0x076800ee
+0,        167,        168,        1,       24, 0x4b88062f, F=0x0, S=1,        8, 0x076800ee
+0,        168,        169,        1,       24, 0x5048066f, F=0x0, S=1,        8, 0x076800ee
+0,        169,        170,        1,       24, 0x550806af, F=0x0, S=1,        8, 0x076800ee
+0,        170,        171,        1,       24, 0x59c806ef, F=0x0, S=1,        8, 0x076800ee
+0,        171,        172,        1,       24, 0x4b9c0630, F=0x0, S=1,        8, 0x076800ee
+0,        172,        173,        1,       24, 0x505c0670, F=0x0, S=1,        8, 0x076800ee
+0,        173,        174,        1,       24, 0x551c06b0, F=0x0, S=1,        8, 0x076800ee
+0,        174,        175,        1,       24, 0x59dc06f0, F=0x0, S=1,        8, 0x076800ee
+0,        175,        176,        1,       24, 0x4bb00631, F=0x0, S=1,        8, 0x076800ee
+0,        176,        177,        1,       24, 0x50700671, F=0x0, S=1,        8, 0x076800ee
+0,        177,        178,        1,       24, 0x553006b1, F=0x0, S=1,        8, 0x076800ee
+0,        178,        179,        1,       24, 0x59f006f1, F=0x0, S=1,        8, 0x076800ee
+0,        179,        180,        1,       24, 0x4bc40632, F=0x0, S=1,        8, 0x076800ee
+0,        180,        181,        1,       24, 0x50840672, F=0x0, S=1,        8, 0x076800ee
+0,        181,        182,        1,       24, 0x554406b2, F=0x0, S=1,        8, 0x076800ee
+0,        182,        183,        1,       24, 0x5a0406f2, F=0x0, S=1,        8, 0x076800ee
+0,        183,        184,        1,       24, 0x4bd80633, F=0x0, S=1,        8, 0x076800ee
+0,        184,        185,        1,       24, 0x50980673, F=0x0, S=1,        8, 0x076800ee
+0,        185,        186,        1,       24, 0x555806b3, F=0x0, S=1,        8, 0x076800ee
+0,        186,        187,        1,       24, 0x5a1806f3, F=0x0, S=1,        8, 0x076800ee
+0,        187,        188,        1,       24, 0x4bec0634, F=0x0, S=1,        8, 0x076800ee
+0,        188,        189,        1,       24, 0x50ac0674, F=0x0, S=1,        8, 0x076800ee
+0,        189,        190,        1,       24, 0x556c06b4, F=0x0, S=1,        8, 0x076800ee
+0,        190,        191,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8, 0x076800ee
+0,        191,        192,        1,       24, 0x4c000635, F=0x0, S=1,        8, 0x076800ee
+0,        192,        193,        1,       24, 0x50c00675, F=0x0, S=1,        8, 0x076800ee
+0,        193,        194,        1,       24, 0x558006b5, F=0x0, S=1,        8, 0x076800ee
+0,        194,        195,        1,       24, 0x5a4006f5, F=0x0, S=1,        8, 0x076800ee
+0,        195,        196,        1,       24, 0x4c140636, F=0x0, S=1,        8, 0x076800ee
+0,        196,        197,        1,       24, 0x50d40676, F=0x0, S=1,        8, 0x076800ee
+0,        197,        198,        1,       24, 0x559406b6, F=0x0, S=1,        8, 0x076800ee
+0,        198,        199,        1,       24, 0x5a5406f6, F=0x0, S=1,        8, 0x076800ee
+0,        199,        200,        1,       24, 0x4c280637, F=0x0, S=1,        8, 0x076800ee
+0,        200,        201,        1,       24, 0x50e80677, F=0x0, S=1,        8, 0x076800ee
+0,        201,        202,        1,       24, 0x55a806b7, F=0x0, S=1,        8, 0x076800ee
+0,        202,        203,        1,       24, 0x5a6806f7, F=0x0, S=1,        8, 0x076800ee
+0,        203,        204,        1,       24, 0x4c3c0638, F=0x0, S=1,        8, 0x076800ee
+0,        204,        205,        1,       24, 0x50fc0678, F=0x0, S=1,        8, 0x076800ee
+0,        205,        206,        1,       24, 0x55bc06b8, F=0x0, S=1,        8, 0x076800ee
+0,        206,        207,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8, 0x076800ee
+0,        207,        208,        1,       24, 0x4c500639, F=0x0, S=1,        8, 0x076800ee
+0,        208,        209,        1,       24, 0x51100679, F=0x0, S=1,        8, 0x076800ee
+0,        209,        210,        1,       24, 0x55d006b9, F=0x0, S=1,        8, 0x076800ee
+0,        210,        211,        1,       24, 0x5a9006f9, F=0x0, S=1,        8, 0x076800ee
+0,        211,        212,        1,       24, 0x4c64063a, F=0x0, S=1,        8, 0x076800ee
+0,        212,        213,        1,       24, 0x5124067a, F=0x0, S=1,        8, 0x076800ee
+0,        213,        214,        1,       24, 0x55e406ba, F=0x0, S=1,        8, 0x076800ee
+0,        214,        215,        1,       24, 0x5aa406fa, F=0x0, S=1,        8, 0x076800ee
+0,        215,        216,        1,       24, 0x4c78063b, F=0x0, S=1,        8, 0x076800ee
+0,        216,        217,        1,       24, 0x5138067b, F=0x0, S=1,        8, 0x076800ee
+0,        217,        218,        1,       24, 0x55f806bb, F=0x0, S=1,        8, 0x076800ee
+0,        218,        219,        1,       24, 0x5ab806fb, F=0x0, S=1,        8, 0x076800ee
+0,        219,        220,        1,       24, 0x4c8c063c, F=0x0, S=1,        8, 0x076800ee
+0,        220,        221,        1,       24, 0x514c067c, F=0x0, S=1,        8, 0x076800ee
+0,        221,        222,        1,       24, 0x560c06bc, F=0x0, S=1,        8, 0x076800ee
+0,        222,        223,        1,       24, 0x5acc06fc, F=0x0, S=1,        8, 0x076800ee
+0,        223,        224,        1,       24, 0x4ca0063d, F=0x0, S=1,        8, 0x076800ee
+0,        224,        225,        1,       24, 0x5160067d, F=0x0, S=1,        8, 0x076800ee
+0,        225,        226,        1,       24, 0x562006bd, F=0x0, S=1,        8, 0x076800ee
+0,        226,        227,        1,       24, 0x5ae006fd, F=0x0, S=1,        8, 0x076800ee
+0,        227,        228,        1,       24, 0x4cb4063e, F=0x0, S=1,        8, 0x076800ee
+0,        228,        229,        1,       24, 0x5174067e, F=0x0, S=1,        8, 0x076800ee
+0,        229,        230,        1,       24, 0x563406be, F=0x0, S=1,        8, 0x076800ee
+0,        230,        231,        1,       24, 0x5af406fe, F=0x0, S=1,        8, 0x076800ee
+0,        231,        232,        1,       24, 0x4cc8063f, F=0x0, S=1,        8, 0x076800ee
+0,        232,        233,        1,       24, 0x5188067f, F=0x0, S=1,        8, 0x076800ee
+0,        233,        234,        1,       24, 0x564806bf, F=0x0, S=1,        8, 0x076800ee
+0,        234,        235,        1,       24, 0x5b0806ff, F=0x0, S=1,        8, 0x076800ee
+0,        235,        236,        1,       24, 0x4cdc0640, F=0x0, S=1,        8, 0x076800ee
+0,        236,        237,        1,       24, 0x519c0680, F=0x0, S=1,        8, 0x076800ee
+0,        237,        238,        1,       24, 0x565c06c0, F=0x0, S=1,        8, 0x076800ee
+0,        238,        239,        1,       24, 0x5b1c0700, F=0x0, S=1,        8, 0x076800ee
+0,        239,        240,        1,       24, 0x4cf00641, F=0x0, S=1,        8, 0x076800ee
+0,        240,        241,        1,       24, 0x51b00681, F=0x0, S=1,        8, 0x076800ee
+0,        241,        242,        1,       24, 0x567006c1, F=0x0, S=1,        8, 0x076800ee
+0,        242,        243,        1,       24, 0x5b300701, F=0x0, S=1,        8, 0x076800ee
+0,        243,        244,        1,       24, 0x4d040642, F=0x0, S=1,        8, 0x076800ee
+0,        244,        245,        1,       24, 0x51c40682, F=0x0, S=1,        8, 0x076800ee
+0,        245,        246,        1,       24, 0x568406c2, F=0x0, S=1,        8, 0x076800ee
+0,        246,        247,        1,       24, 0x5b440702, F=0x0, S=1,        8, 0x076800ee
+0,        247,        248,        1,       24, 0x4d180643, F=0x0, S=1,        8, 0x076800ee
+0,        248,        249,        1,       24, 0x51d80683, F=0x0, S=1,        8, 0x076800ee
+0,        249,        250,        1,       24, 0x569806c3, F=0x0, S=1,        8, 0x076800ee
+0,        250,        251,        1,       24, 0x5b580703, F=0x0, S=1,        8, 0x076800ee
+0,        251,        252,        1,       24, 0x4d2c0644, F=0x0, S=1,        8, 0x076800ee
+0,        252,        253,        1,       24, 0x51ec0684, F=0x0, S=1,        8, 0x076800ee
+0,        253,        254,        1,       24, 0x56ac06c4, F=0x0, S=1,        8, 0x076800ee
+0,        254,        255,        1,       24, 0x5b6c0704, F=0x0, S=1,        8, 0x076800ee
+0,        255,        256,        1,       24, 0x4d400645, F=0x0, S=1,        8, 0x076800ee
+0,        256,        257,        1,       24, 0x52000685, F=0x0, S=1,        8, 0x076800ee
+0,        257,        258,        1,       24, 0x56c006c5, F=0x0, S=1,        8, 0x076800ee
+0,        258,        259,        1,       24, 0x5b800705, F=0x0, S=1,        8, 0x076800ee
+0,        259,        260,        1,       24, 0x4d540646, F=0x0, S=1,        8, 0x076800ee
+0,        260,        261,        1,       24, 0x52140686, F=0x0, S=1,        8, 0x076800ee
+0,        261,        262,        1,       24, 0x56d406c6, F=0x0, S=1,        8, 0x076800ee
+0,        262,        263,        1,       24, 0x5b940706, F=0x0, S=1,        8, 0x076800ee
+0,        263,        264,        1,       24, 0x4d680647, F=0x0, S=1,        8, 0x076800ee
+0,        264,        265,        1,       24, 0x52280687, F=0x0, S=1,        8, 0x076800ee
+0,        265,        266,        1,       24, 0x56e806c7, F=0x0, S=1,        8, 0x076800ee
+0,        266,        267,        1,       24, 0x5ba80707, F=0x0, S=1,        8, 0x076800ee
+0,        267,        268,        1,       24, 0x4d7c0648, F=0x0, S=1,        8, 0x076800ee
+0,        268,        269,        1,       24, 0x523c0688, F=0x0, S=1,        8, 0x076800ee
+0,        269,        270,        1,       24, 0x56fc06c8, F=0x0, S=1,        8, 0x076800ee
+0,        270,        271,        1,       24, 0x5bbc0708, F=0x0, S=1,        8, 0x076800ee
+0,        271,        272,        1,       24, 0x4d900649, F=0x0, S=1,        8, 0x076800ee
+0,        272,        273,        1,       24, 0x52500689, F=0x0, S=1,        8, 0x076800ee
+0,        273,        274,        1,       24, 0x571006c9, F=0x0, S=1,        8, 0x076800ee
+0,        274,        275,        1,       24, 0x5bd00709, F=0x0, S=1,        8, 0x076800ee
+0,        275,        276,        1,       24, 0x4da4064a, F=0x0, S=1,        8, 0x076800ee
+0,        276,        277,        1,       24, 0x5264068a, F=0x0, S=1,        8, 0x076800ee
+0,        277,        278,        1,       24, 0x572406ca, F=0x0, S=1,        8, 0x076800ee
+0,        278,        279,        1,       24, 0x5be4070a, F=0x0, S=1,        8, 0x076800ee
+0,        279,        280,        1,       24, 0x4db8064b, F=0x0, S=1,        8, 0x076800ee
+0,        280,        281,        1,       24, 0x5278068b, F=0x0, S=1,        8, 0x076800ee
+0,        281,        282,        1,       24, 0x573806cb, F=0x0, S=1,        8, 0x076800ee
+0,        282,        283,        1,       24, 0x5bf8070b, F=0x0, S=1,        8, 0x076800ee
+0,        283,        284,        1,       24, 0x4dcc064c, F=0x0, S=1,        8, 0x076800ee
+0,        284,        285,        1,       24, 0x528c068c, F=0x0, S=1,        8, 0x076800ee
+0,        285,        286,        1,       24, 0x574c06cc, F=0x0, S=1,        8, 0x076800ee
+0,        286,        287,        1,       24, 0x5c0c070c, F=0x0, S=1,        8, 0x076800ee
+0,        287,        288,        1,       24, 0x4de0064d, F=0x0, S=1,        8, 0x076800ee
+0,        288,        289,        1,       24, 0x52a0068d, F=0x0, S=1,        8, 0x076800ee
+0,        289,        290,        1,       24, 0x576006cd, F=0x0, S=1,        8, 0x076800ee
+0,        290,        291,        1,       24, 0x5c20070d, F=0x0, S=1,        8, 0x076800ee
+0,        291,        292,        1,       24, 0x4df4064e, F=0x0, S=1,        8, 0x076800ee
+0,        292,        293,        1,       24, 0x52b4068e, F=0x0, S=1,        8, 0x076800ee
+0,        293,        294,        1,       24, 0x577406ce, F=0x0, S=1,        8, 0x076800ee
+0,        294,        295,        1,       24, 0x5c34070e, F=0x0, S=1,        8, 0x076800ee
+0,        295,        296,        1,       24, 0x4e08064f, F=0x0, S=1,        8, 0x076800ee
+0,        296,        297,        1,       24, 0x52c8068f, F=0x0, S=1,        8, 0x076800ee
+0,        297,        298,        1,       24, 0x578806cf, F=0x0, S=1,        8, 0x076800ee
+0,        298,        299,        1,       24, 0x5c48070f, F=0x0, S=1,        8, 0x076800ee
+0,        299,        300,        1,       24, 0x4e1c0650, F=0x0, S=1,        8, 0x076800ee
+0,        300,        301,        1,       24, 0x52dc0690, F=0x0, S=1,        8, 0x076800ee
+0,        301,        302,        1,       24, 0x579c06d0, F=0x0, S=1,        8, 0x076800ee
+0,        302,        303,        1,       24, 0x5c5c0710, F=0x0, S=1,        8, 0x076800ee
+0,        303,        304,        1,       24, 0x4e300651, F=0x0, S=1,        8, 0x076800ee
+0,        304,        305,        1,       24, 0x52f00691, F=0x0, S=1,        8, 0x076800ee
+0,        305,        306,        1,       24, 0x57b006d1, F=0x0, S=1,        8, 0x076800ee
+0,        306,        307,        1,       24, 0x5c700711, F=0x0, S=1,        8, 0x076800ee
+0,        307,        308,        1,       24, 0x4e440652, F=0x0, S=1,        8, 0x076800ee
+0,        308,        309,        1,       24, 0x53040692, F=0x0, S=1,        8, 0x076800ee
+0,        309,        310,        1,       24, 0x57c406d2, F=0x0, S=1,        8, 0x076800ee
+0,        310,        311,        1,       24, 0x5c840712, F=0x0, S=1,        8, 0x076800ee
+0,        311,        312,        1,       24, 0x4e580653, F=0x0, S=1,        8, 0x076800ee
+0,        312,        313,        1,       24, 0x53180693, F=0x0, S=1,        8, 0x076800ee
+0,        313,        314,        1,       24, 0x57d806d3, F=0x0, S=1,        8, 0x076800ee
+0,        314,        315,        1,       24, 0x5c980713, F=0x0, S=1,        8, 0x076800ee
+0,        315,        316,        1,       24, 0x4e6c0654, F=0x0, S=1,        8, 0x076800ee
+0,        316,        317,        1,       24, 0x532c0694, F=0x0, S=1,        8, 0x076800ee
+0,        317,        318,        1,       24, 0x57ec06d4, F=0x0, S=1,        8, 0x076800ee
+0,        318,        319,        1,       24, 0x5cac0714, F=0x0, S=1,        8, 0x076800ee
+0,        319,        320,        1,       24, 0x4e800655, F=0x0, S=1,        8, 0x076800ee
+0,        320,        321,        1,       24, 0x53400695, F=0x0, S=1,        8, 0x076800ee
+0,        321,        322,        1,       24, 0x580006d5, F=0x0, S=1,        8, 0x076800ee
+0,        322,        323,        1,       24, 0x5cc00715, F=0x0, S=1,        8, 0x076800ee
+0,        323,        324,        1,       24, 0x4e940656, F=0x0, S=1,        8, 0x076800ee
+0,        324,        325,        1,       24, 0x53540696, F=0x0, S=1,        8, 0x076800ee
+0,        325,        326,        1,       24, 0x581406d6, F=0x0, S=1,        8, 0x076800ee
+0,        326,        327,        1,       24, 0x5cd40716, F=0x0, S=1,        8, 0x076800ee
+0,        327,        328,        1,       24, 0x4ea80657, F=0x0, S=1,        8, 0x076800ee
+0,        328,        329,        1,       24, 0x53680697, F=0x0, S=1,        8, 0x076800ee
+0,        329,        330,        1,       24, 0x582806d7, F=0x0, S=1,        8, 0x076800ee
+0,        330,        331,        1,       24, 0x5ce80717, F=0x0, S=1,        8, 0x076800ee
+0,        331,        332,        1,       24, 0x4ebc0658, F=0x0, S=1,        8, 0x076800ee
+0,        332,        333,        1,       24, 0x537c0698, F=0x0, S=1,        8, 0x076800ee
+0,        333,        334,        1,       24, 0x583c06d8, F=0x0, S=1,        8, 0x076800ee
+0,        334,        335,        1,       24, 0x5cfc0718, F=0x0, S=1,        8, 0x076800ee
+0,        335,        336,        1,       24, 0x4ed00659, F=0x0, S=1,        8, 0x076800ee
+0,        336,        337,        1,       57, 0x899c0f1e, S=1,        8, 0x05ec00be
+0,        337,        338,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,        338,        339,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,        339,        340,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,        340,        341,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,        341,        342,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,        342,        343,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,        343,        344,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,        344,        345,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,        345,        346,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,        346,        347,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,        347,        348,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,        348,        349,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,        349,        350,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,        350,        351,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,        351,        352,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,        352,        353,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,        353,        354,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,        354,        355,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        355,        356,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,        356,        357,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,        357,        358,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,        358,        359,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,        359,        360,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,        360,        361,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,        361,        362,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,        362,        363,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,        363,        364,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,        364,        365,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,        365,        366,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,        366,        367,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,        367,        368,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,        368,        369,        1,       57, 0x9b930fc1, S=1,        8, 0x05ec00be
+0,        369,        370,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,        370,        371,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,        371,        372,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,        372,        373,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,        373,        374,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,        374,        375,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,        375,        376,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,        376,        377,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,        377,        378,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,        378,        379,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,        379,        380,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,        380,        381,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,        381,        382,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,        382,        383,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,        383,        384,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,        384,        385,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,        385,        386,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,        386,        387,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        387,        388,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,        388,        389,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,        389,        390,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,        390,        391,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
diff --git a/tests/ref/fate/force_key_frames-source-drop b/tests/ref/fate/force_key_frames-source-drop
index 220c0f0f889..da6679ddb04 100644
--- a/tests/ref/fate/force_key_frames-source-drop
+++ b/tests/ref/fate/force_key_frames-source-drop
@@ -3,20 +3,20 @@ 
 #codec_id 0: mpeg2video
 #dimensions 0: 2x2
 #sar 0: 0/1
-0,         -1,          0,        1,       57, 0x80ba0ecd, S=1,        8
-0,          0,          1,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,          1,          2,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,          2,          3,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,          3,          4,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,          4,          5,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,          5,          6,        1,       57, 0x7a110e90, S=1,        8
-0,          6,          7,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,          7,          8,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,          8,          9,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,          9,         10,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,         10,         11,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,         11,         12,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,         12,         13,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,         13,         14,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,         14,         15,        1,       57, 0x88850f14, S=1,        8
-0,         15,         16,        1,       57, 0x7aa20e95, S=1,        8
+0,         -1,          0,        1,       57, 0x80ba0ecd, S=1,        8, 0x05ec00be
+0,          0,          1,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,          1,          2,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,          2,          3,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,          3,          4,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,          4,          5,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,          5,          6,        1,       57, 0x7a110e90, S=1,        8, 0x05ec00be
+0,          6,          7,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,          7,          8,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,          8,          9,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,          9,         10,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,         10,         11,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,         11,         12,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,         12,         13,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,         13,         14,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,         14,         15,        1,       57, 0x88850f14, S=1,        8, 0x05ec00be
+0,         15,         16,        1,       57, 0x7aa20e95, S=1,        8, 0x05ec00be
diff --git a/tests/ref/fate/force_key_frames-source-dup b/tests/ref/fate/force_key_frames-source-dup
index 46fffc21f92..3dbad1b1edc 100644
--- a/tests/ref/fate/force_key_frames-source-dup
+++ b/tests/ref/fate/force_key_frames-source-dup
@@ -3,615 +3,615 @@ 
 #codec_id 0: mpeg2video
 #dimensions 0: 2x2
 #sar 0: 0/1
-0,         -1,          0,        1,       57, 0x8baa0f1a, S=1,        8
-0,          0,          1,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,          1,          2,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,          2,          3,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,          3,          4,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,          4,          5,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,          5,          6,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,          6,          7,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,          7,          8,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,          8,          9,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,          9,         10,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,         10,         11,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,         11,         12,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,         12,         13,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,         13,         14,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,         14,         15,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,         15,         16,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,         16,         17,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,         17,         18,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,         18,         19,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,         19,         20,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,         20,         21,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,         21,         22,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,         22,         23,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,         23,         24,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,         24,         25,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,         25,         26,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,         26,         27,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,         27,         28,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,         28,         29,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,         29,         30,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,         30,         31,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,         31,         32,        1,       24, 0x4afc0628, F=0x0, S=1,        8
-0,         32,         33,        1,       24, 0x4fbc0668, F=0x0, S=1,        8
-0,         33,         34,        1,       24, 0x547c06a8, F=0x0, S=1,        8
-0,         34,         35,        1,       24, 0x593c06e8, F=0x0, S=1,        8
-0,         35,         36,        1,       24, 0x4b100629, F=0x0, S=1,        8
-0,         36,         37,        1,       24, 0x4fd00669, F=0x0, S=1,        8
-0,         37,         38,        1,       24, 0x549006a9, F=0x0, S=1,        8
-0,         38,         39,        1,       24, 0x595006e9, F=0x0, S=1,        8
-0,         39,         40,        1,       24, 0x4b24062a, F=0x0, S=1,        8
-0,         40,         41,        1,       24, 0x4fe4066a, F=0x0, S=1,        8
-0,         41,         42,        1,       24, 0x54a406aa, F=0x0, S=1,        8
-0,         42,         43,        1,       24, 0x596406ea, F=0x0, S=1,        8
-0,         43,         44,        1,       24, 0x4b38062b, F=0x0, S=1,        8
-0,         44,         45,        1,       24, 0x4ff8066b, F=0x0, S=1,        8
-0,         45,         46,        1,       24, 0x54b806ab, F=0x0, S=1,        8
-0,         46,         47,        1,       24, 0x597806eb, F=0x0, S=1,        8
-0,         47,         48,        1,       24, 0x4b4c062c, F=0x0, S=1,        8
-0,         48,         49,        1,       24, 0x500c066c, F=0x0, S=1,        8
-0,         49,         50,        1,       24, 0x54cc06ac, F=0x0, S=1,        8
-0,         50,         51,        1,       24, 0x598c06ec, F=0x0, S=1,        8
-0,         51,         52,        1,       24, 0x4b60062d, F=0x0, S=1,        8
-0,         52,         53,        1,       24, 0x5020066d, F=0x0, S=1,        8
-0,         53,         54,        1,       24, 0x54e006ad, F=0x0, S=1,        8
-0,         54,         55,        1,       24, 0x59a006ed, F=0x0, S=1,        8
-0,         55,         56,        1,       24, 0x4b74062e, F=0x0, S=1,        8
-0,         56,         57,        1,       24, 0x5034066e, F=0x0, S=1,        8
-0,         57,         58,        1,       24, 0x54f406ae, F=0x0, S=1,        8
-0,         58,         59,        1,       24, 0x59b406ee, F=0x0, S=1,        8
-0,         59,         60,        1,       24, 0x4b88062f, F=0x0, S=1,        8
-0,         60,         61,        1,       24, 0x5048066f, F=0x0, S=1,        8
-0,         61,         62,        1,       24, 0x550806af, F=0x0, S=1,        8
-0,         62,         63,        1,       24, 0x59c806ef, F=0x0, S=1,        8
-0,         63,         64,        1,       24, 0x4b9c0630, F=0x0, S=1,        8
-0,         64,         65,        1,       24, 0x505c0670, F=0x0, S=1,        8
-0,         65,         66,        1,       24, 0x551c06b0, F=0x0, S=1,        8
-0,         66,         67,        1,       24, 0x59dc06f0, F=0x0, S=1,        8
-0,         67,         68,        1,       24, 0x4bb00631, F=0x0, S=1,        8
-0,         68,         69,        1,       24, 0x50700671, F=0x0, S=1,        8
-0,         69,         70,        1,       24, 0x553006b1, F=0x0, S=1,        8
-0,         70,         71,        1,       24, 0x59f006f1, F=0x0, S=1,        8
-0,         71,         72,        1,       24, 0x4bc40632, F=0x0, S=1,        8
-0,         72,         73,        1,       24, 0x50840672, F=0x0, S=1,        8
-0,         73,         74,        1,       24, 0x554406b2, F=0x0, S=1,        8
-0,         74,         75,        1,       24, 0x5a0406f2, F=0x0, S=1,        8
-0,         75,         76,        1,       24, 0x4bd80633, F=0x0, S=1,        8
-0,         76,         77,        1,       24, 0x50980673, F=0x0, S=1,        8
-0,         77,         78,        1,       24, 0x555806b3, F=0x0, S=1,        8
-0,         78,         79,        1,       24, 0x5a1806f3, F=0x0, S=1,        8
-0,         79,         80,        1,       24, 0x4bec0634, F=0x0, S=1,        8
-0,         80,         81,        1,       24, 0x50ac0674, F=0x0, S=1,        8
-0,         81,         82,        1,       24, 0x556c06b4, F=0x0, S=1,        8
-0,         82,         83,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8
-0,         83,         84,        1,       24, 0x4c000635, F=0x0, S=1,        8
-0,         84,         85,        1,       24, 0x50c00675, F=0x0, S=1,        8
-0,         85,         86,        1,       24, 0x558006b5, F=0x0, S=1,        8
-0,         86,         87,        1,       24, 0x5a4006f5, F=0x0, S=1,        8
-0,         87,         88,        1,       24, 0x4c140636, F=0x0, S=1,        8
-0,         88,         89,        1,       24, 0x50d40676, F=0x0, S=1,        8
-0,         89,         90,        1,       24, 0x559406b6, F=0x0, S=1,        8
-0,         90,         91,        1,       24, 0x5a5406f6, F=0x0, S=1,        8
-0,         91,         92,        1,       24, 0x4c280637, F=0x0, S=1,        8
-0,         92,         93,        1,       24, 0x50e80677, F=0x0, S=1,        8
-0,         93,         94,        1,       24, 0x55a806b7, F=0x0, S=1,        8
-0,         94,         95,        1,       24, 0x5a6806f7, F=0x0, S=1,        8
-0,         95,         96,        1,       24, 0x4c3c0638, F=0x0, S=1,        8
-0,         96,         97,        1,       24, 0x50fc0678, F=0x0, S=1,        8
-0,         97,         98,        1,       24, 0x55bc06b8, F=0x0, S=1,        8
-0,         98,         99,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8
-0,         99,        100,        1,       24, 0x4c500639, F=0x0, S=1,        8
-0,        100,        101,        1,       24, 0x51100679, F=0x0, S=1,        8
-0,        101,        102,        1,       24, 0x55d006b9, F=0x0, S=1,        8
-0,        102,        103,        1,       24, 0x5a9006f9, F=0x0, S=1,        8
-0,        103,        104,        1,       24, 0x4c64063a, F=0x0, S=1,        8
-0,        104,        105,        1,       24, 0x5124067a, F=0x0, S=1,        8
-0,        105,        106,        1,       24, 0x55e406ba, F=0x0, S=1,        8
-0,        106,        107,        1,       24, 0x5aa406fa, F=0x0, S=1,        8
-0,        107,        108,        1,       24, 0x4c78063b, F=0x0, S=1,        8
-0,        108,        109,        1,       24, 0x5138067b, F=0x0, S=1,        8
-0,        109,        110,        1,       24, 0x55f806bb, F=0x0, S=1,        8
-0,        110,        111,        1,       24, 0x5ab806fb, F=0x0, S=1,        8
-0,        111,        112,        1,       24, 0x4c8c063c, F=0x0, S=1,        8
-0,        112,        113,        1,       24, 0x514c067c, F=0x0, S=1,        8
-0,        113,        114,        1,       24, 0x560c06bc, F=0x0, S=1,        8
-0,        114,        115,        1,       24, 0x5acc06fc, F=0x0, S=1,        8
-0,        115,        116,        1,       24, 0x4ca0063d, F=0x0, S=1,        8
-0,        116,        117,        1,       24, 0x5160067d, F=0x0, S=1,        8
-0,        117,        118,        1,       24, 0x562006bd, F=0x0, S=1,        8
-0,        118,        119,        1,       24, 0x5ae006fd, F=0x0, S=1,        8
-0,        119,        120,        1,       24, 0x4cb4063e, F=0x0, S=1,        8
-0,        120,        121,        1,       24, 0x5174067e, F=0x0, S=1,        8
-0,        121,        122,        1,       24, 0x563406be, F=0x0, S=1,        8
-0,        122,        123,        1,       24, 0x5af406fe, F=0x0, S=1,        8
-0,        123,        124,        1,       24, 0x4cc8063f, F=0x0, S=1,        8
-0,        124,        125,        1,       24, 0x5188067f, F=0x0, S=1,        8
-0,        125,        126,        1,       24, 0x564806bf, F=0x0, S=1,        8
-0,        126,        127,        1,       24, 0x5b0806ff, F=0x0, S=1,        8
-0,        127,        128,        1,       24, 0x4cdc0640, F=0x0, S=1,        8
-0,        128,        129,        1,       24, 0x519c0680, F=0x0, S=1,        8
-0,        129,        130,        1,       24, 0x565c06c0, F=0x0, S=1,        8
-0,        130,        131,        1,       24, 0x5b1c0700, F=0x0, S=1,        8
-0,        131,        132,        1,       24, 0x4cf00641, F=0x0, S=1,        8
-0,        132,        133,        1,       24, 0x51b00681, F=0x0, S=1,        8
-0,        133,        134,        1,       24, 0x567006c1, F=0x0, S=1,        8
-0,        134,        135,        1,       24, 0x5b300701, F=0x0, S=1,        8
-0,        135,        136,        1,       24, 0x4d040642, F=0x0, S=1,        8
-0,        136,        137,        1,       24, 0x51c40682, F=0x0, S=1,        8
-0,        137,        138,        1,       24, 0x568406c2, F=0x0, S=1,        8
-0,        138,        139,        1,       24, 0x5b440702, F=0x0, S=1,        8
-0,        139,        140,        1,       24, 0x4d180643, F=0x0, S=1,        8
-0,        140,        141,        1,       24, 0x51d80683, F=0x0, S=1,        8
-0,        141,        142,        1,       24, 0x569806c3, F=0x0, S=1,        8
-0,        142,        143,        1,       24, 0x5b580703, F=0x0, S=1,        8
-0,        143,        144,        1,       24, 0x4d2c0644, F=0x0, S=1,        8
-0,        144,        145,        1,       24, 0x51ec0684, F=0x0, S=1,        8
-0,        145,        146,        1,       24, 0x56ac06c4, F=0x0, S=1,        8
-0,        146,        147,        1,       24, 0x5b6c0704, F=0x0, S=1,        8
-0,        147,        148,        1,       24, 0x4d400645, F=0x0, S=1,        8
-0,        148,        149,        1,       24, 0x52000685, F=0x0, S=1,        8
-0,        149,        150,        1,       24, 0x56c006c5, F=0x0, S=1,        8
-0,        150,        151,        1,       24, 0x5b800705, F=0x0, S=1,        8
-0,        151,        152,        1,       24, 0x4d540646, F=0x0, S=1,        8
-0,        152,        153,        1,       24, 0x52140686, F=0x0, S=1,        8
-0,        153,        154,        1,       24, 0x56d406c6, F=0x0, S=1,        8
-0,        154,        155,        1,       24, 0x5b940706, F=0x0, S=1,        8
-0,        155,        156,        1,       24, 0x4d680647, F=0x0, S=1,        8
-0,        156,        157,        1,       24, 0x52280687, F=0x0, S=1,        8
-0,        157,        158,        1,       24, 0x56e806c7, F=0x0, S=1,        8
-0,        158,        159,        1,       24, 0x5ba80707, F=0x0, S=1,        8
-0,        159,        160,        1,       24, 0x4d7c0648, F=0x0, S=1,        8
-0,        160,        161,        1,       24, 0x523c0688, F=0x0, S=1,        8
-0,        161,        162,        1,       24, 0x56fc06c8, F=0x0, S=1,        8
-0,        162,        163,        1,       24, 0x5bbc0708, F=0x0, S=1,        8
-0,        163,        164,        1,       24, 0x4d900649, F=0x0, S=1,        8
-0,        164,        165,        1,       24, 0x52500689, F=0x0, S=1,        8
-0,        165,        166,        1,       24, 0x571006c9, F=0x0, S=1,        8
-0,        166,        167,        1,       24, 0x5bd00709, F=0x0, S=1,        8
-0,        167,        168,        1,       57, 0x97cf0f83, S=1,        8
-0,        168,        169,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,        169,        170,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,        170,        171,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,        171,        172,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,        172,        173,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,        173,        174,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,        174,        175,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,        175,        176,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,        176,        177,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,        177,        178,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,        178,        179,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,        179,        180,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,        180,        181,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,        181,        182,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,        182,        183,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,        183,        184,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,        184,        185,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,        185,        186,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,        186,        187,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,        187,        188,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,        188,        189,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,        189,        190,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,        190,        191,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,        191,        192,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,        192,        193,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,        193,        194,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,        194,        195,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,        195,        196,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,        196,        197,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,        197,        198,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,        198,        199,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,        199,        200,        1,       24, 0x4afc0628, F=0x0, S=1,        8
-0,        200,        201,        1,       24, 0x4fbc0668, F=0x0, S=1,        8
-0,        201,        202,        1,       24, 0x547c06a8, F=0x0, S=1,        8
-0,        202,        203,        1,       24, 0x593c06e8, F=0x0, S=1,        8
-0,        203,        204,        1,       24, 0x4b100629, F=0x0, S=1,        8
-0,        204,        205,        1,       24, 0x4fd00669, F=0x0, S=1,        8
-0,        205,        206,        1,       24, 0x549006a9, F=0x0, S=1,        8
-0,        206,        207,        1,       24, 0x595006e9, F=0x0, S=1,        8
-0,        207,        208,        1,       24, 0x4b24062a, F=0x0, S=1,        8
-0,        208,        209,        1,       24, 0x4fe4066a, F=0x0, S=1,        8
-0,        209,        210,        1,       24, 0x54a406aa, F=0x0, S=1,        8
-0,        210,        211,        1,       24, 0x596406ea, F=0x0, S=1,        8
-0,        211,        212,        1,       24, 0x4b38062b, F=0x0, S=1,        8
-0,        212,        213,        1,       24, 0x4ff8066b, F=0x0, S=1,        8
-0,        213,        214,        1,       24, 0x54b806ab, F=0x0, S=1,        8
-0,        214,        215,        1,       24, 0x597806eb, F=0x0, S=1,        8
-0,        215,        216,        1,       24, 0x4b4c062c, F=0x0, S=1,        8
-0,        216,        217,        1,       24, 0x500c066c, F=0x0, S=1,        8
-0,        217,        218,        1,       24, 0x54cc06ac, F=0x0, S=1,        8
-0,        218,        219,        1,       24, 0x598c06ec, F=0x0, S=1,        8
-0,        219,        220,        1,       24, 0x4b60062d, F=0x0, S=1,        8
-0,        220,        221,        1,       24, 0x5020066d, F=0x0, S=1,        8
-0,        221,        222,        1,       24, 0x54e006ad, F=0x0, S=1,        8
-0,        222,        223,        1,       24, 0x59a006ed, F=0x0, S=1,        8
-0,        223,        224,        1,       24, 0x4b74062e, F=0x0, S=1,        8
-0,        224,        225,        1,       24, 0x5034066e, F=0x0, S=1,        8
-0,        225,        226,        1,       24, 0x54f406ae, F=0x0, S=1,        8
-0,        226,        227,        1,       24, 0x59b406ee, F=0x0, S=1,        8
-0,        227,        228,        1,       24, 0x4b88062f, F=0x0, S=1,        8
-0,        228,        229,        1,       24, 0x5048066f, F=0x0, S=1,        8
-0,        229,        230,        1,       24, 0x550806af, F=0x0, S=1,        8
-0,        230,        231,        1,       24, 0x59c806ef, F=0x0, S=1,        8
-0,        231,        232,        1,       24, 0x4b9c0630, F=0x0, S=1,        8
-0,        232,        233,        1,       24, 0x505c0670, F=0x0, S=1,        8
-0,        233,        234,        1,       24, 0x551c06b0, F=0x0, S=1,        8
-0,        234,        235,        1,       24, 0x59dc06f0, F=0x0, S=1,        8
-0,        235,        236,        1,       24, 0x4bb00631, F=0x0, S=1,        8
-0,        236,        237,        1,       24, 0x50700671, F=0x0, S=1,        8
-0,        237,        238,        1,       24, 0x553006b1, F=0x0, S=1,        8
-0,        238,        239,        1,       24, 0x59f006f1, F=0x0, S=1,        8
-0,        239,        240,        1,       24, 0x4bc40632, F=0x0, S=1,        8
-0,        240,        241,        1,       24, 0x50840672, F=0x0, S=1,        8
-0,        241,        242,        1,       24, 0x554406b2, F=0x0, S=1,        8
-0,        242,        243,        1,       24, 0x5a0406f2, F=0x0, S=1,        8
-0,        243,        244,        1,       24, 0x4bd80633, F=0x0, S=1,        8
-0,        244,        245,        1,       24, 0x50980673, F=0x0, S=1,        8
-0,        245,        246,        1,       24, 0x555806b3, F=0x0, S=1,        8
-0,        246,        247,        1,       24, 0x5a1806f3, F=0x0, S=1,        8
-0,        247,        248,        1,       24, 0x4bec0634, F=0x0, S=1,        8
-0,        248,        249,        1,       24, 0x50ac0674, F=0x0, S=1,        8
-0,        249,        250,        1,       24, 0x556c06b4, F=0x0, S=1,        8
-0,        250,        251,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8
-0,        251,        252,        1,       24, 0x4c000635, F=0x0, S=1,        8
-0,        252,        253,        1,       24, 0x50c00675, F=0x0, S=1,        8
-0,        253,        254,        1,       24, 0x558006b5, F=0x0, S=1,        8
-0,        254,        255,        1,       24, 0x5a4006f5, F=0x0, S=1,        8
-0,        255,        256,        1,       24, 0x4c140636, F=0x0, S=1,        8
-0,        256,        257,        1,       24, 0x50d40676, F=0x0, S=1,        8
-0,        257,        258,        1,       24, 0x559406b6, F=0x0, S=1,        8
-0,        258,        259,        1,       24, 0x5a5406f6, F=0x0, S=1,        8
-0,        259,        260,        1,       24, 0x4c280637, F=0x0, S=1,        8
-0,        260,        261,        1,       24, 0x50e80677, F=0x0, S=1,        8
-0,        261,        262,        1,       24, 0x55a806b7, F=0x0, S=1,        8
-0,        262,        263,        1,       24, 0x5a6806f7, F=0x0, S=1,        8
-0,        263,        264,        1,       24, 0x4c3c0638, F=0x0, S=1,        8
-0,        264,        265,        1,       24, 0x50fc0678, F=0x0, S=1,        8
-0,        265,        266,        1,       24, 0x55bc06b8, F=0x0, S=1,        8
-0,        266,        267,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8
-0,        267,        268,        1,       24, 0x4c500639, F=0x0, S=1,        8
-0,        268,        269,        1,       24, 0x51100679, F=0x0, S=1,        8
-0,        269,        270,        1,       24, 0x55d006b9, F=0x0, S=1,        8
-0,        270,        271,        1,       24, 0x5a9006f9, F=0x0, S=1,        8
-0,        271,        272,        1,       24, 0x4c64063a, F=0x0, S=1,        8
-0,        272,        273,        1,       24, 0x5124067a, F=0x0, S=1,        8
-0,        273,        274,        1,       24, 0x55e406ba, F=0x0, S=1,        8
-0,        274,        275,        1,       24, 0x5aa406fa, F=0x0, S=1,        8
-0,        275,        276,        1,       24, 0x4c78063b, F=0x0, S=1,        8
-0,        276,        277,        1,       24, 0x5138067b, F=0x0, S=1,        8
-0,        277,        278,        1,       24, 0x55f806bb, F=0x0, S=1,        8
-0,        278,        279,        1,       24, 0x5ab806fb, F=0x0, S=1,        8
-0,        279,        280,        1,       24, 0x4c8c063c, F=0x0, S=1,        8
-0,        280,        281,        1,       24, 0x514c067c, F=0x0, S=1,        8
-0,        281,        282,        1,       24, 0x560c06bc, F=0x0, S=1,        8
-0,        282,        283,        1,       24, 0x5acc06fc, F=0x0, S=1,        8
-0,        283,        284,        1,       24, 0x4ca0063d, F=0x0, S=1,        8
-0,        284,        285,        1,       24, 0x5160067d, F=0x0, S=1,        8
-0,        285,        286,        1,       24, 0x562006bd, F=0x0, S=1,        8
-0,        286,        287,        1,       24, 0x5ae006fd, F=0x0, S=1,        8
-0,        287,        288,        1,       24, 0x4cb4063e, F=0x0, S=1,        8
-0,        288,        289,        1,       24, 0x5174067e, F=0x0, S=1,        8
-0,        289,        290,        1,       24, 0x563406be, F=0x0, S=1,        8
-0,        290,        291,        1,       24, 0x5af406fe, F=0x0, S=1,        8
-0,        291,        292,        1,       24, 0x4cc8063f, F=0x0, S=1,        8
-0,        292,        293,        1,       24, 0x5188067f, F=0x0, S=1,        8
-0,        293,        294,        1,       24, 0x564806bf, F=0x0, S=1,        8
-0,        294,        295,        1,       24, 0x5b0806ff, F=0x0, S=1,        8
-0,        295,        296,        1,       24, 0x4cdc0640, F=0x0, S=1,        8
-0,        296,        297,        1,       24, 0x519c0680, F=0x0, S=1,        8
-0,        297,        298,        1,       24, 0x565c06c0, F=0x0, S=1,        8
-0,        298,        299,        1,       24, 0x5b1c0700, F=0x0, S=1,        8
-0,        299,        300,        1,       24, 0x4cf00641, F=0x0, S=1,        8
-0,        300,        301,        1,       24, 0x51b00681, F=0x0, S=1,        8
-0,        301,        302,        1,       24, 0x567006c1, F=0x0, S=1,        8
-0,        302,        303,        1,       24, 0x5b300701, F=0x0, S=1,        8
-0,        303,        304,        1,       24, 0x4d040642, F=0x0, S=1,        8
-0,        304,        305,        1,       24, 0x51c40682, F=0x0, S=1,        8
-0,        305,        306,        1,       24, 0x568406c2, F=0x0, S=1,        8
-0,        306,        307,        1,       24, 0x5b440702, F=0x0, S=1,        8
-0,        307,        308,        1,       24, 0x4d180643, F=0x0, S=1,        8
-0,        308,        309,        1,       24, 0x51d80683, F=0x0, S=1,        8
-0,        309,        310,        1,       24, 0x569806c3, F=0x0, S=1,        8
-0,        310,        311,        1,       24, 0x5b580703, F=0x0, S=1,        8
-0,        311,        312,        1,       24, 0x4d2c0644, F=0x0, S=1,        8
-0,        312,        313,        1,       24, 0x51ec0684, F=0x0, S=1,        8
-0,        313,        314,        1,       24, 0x56ac06c4, F=0x0, S=1,        8
-0,        314,        315,        1,       24, 0x5b6c0704, F=0x0, S=1,        8
-0,        315,        316,        1,       24, 0x4d400645, F=0x0, S=1,        8
-0,        316,        317,        1,       24, 0x52000685, F=0x0, S=1,        8
-0,        317,        318,        1,       24, 0x56c006c5, F=0x0, S=1,        8
-0,        318,        319,        1,       24, 0x5b800705, F=0x0, S=1,        8
-0,        319,        320,        1,       24, 0x4d540646, F=0x0, S=1,        8
-0,        320,        321,        1,       24, 0x52140686, F=0x0, S=1,        8
-0,        321,        322,        1,       24, 0x56d406c6, F=0x0, S=1,        8
-0,        322,        323,        1,       24, 0x5b940706, F=0x0, S=1,        8
-0,        323,        324,        1,       24, 0x4d680647, F=0x0, S=1,        8
-0,        324,        325,        1,       24, 0x52280687, F=0x0, S=1,        8
-0,        325,        326,        1,       24, 0x56e806c7, F=0x0, S=1,        8
-0,        326,        327,        1,       24, 0x5ba80707, F=0x0, S=1,        8
-0,        327,        328,        1,       24, 0x4d7c0648, F=0x0, S=1,        8
-0,        328,        329,        1,       24, 0x523c0688, F=0x0, S=1,        8
-0,        329,        330,        1,       24, 0x56fc06c8, F=0x0, S=1,        8
-0,        330,        331,        1,       24, 0x5bbc0708, F=0x0, S=1,        8
-0,        331,        332,        1,       24, 0x4d900649, F=0x0, S=1,        8
-0,        332,        333,        1,       24, 0x52500689, F=0x0, S=1,        8
-0,        333,        334,        1,       24, 0x571006c9, F=0x0, S=1,        8
-0,        334,        335,        1,       24, 0x5bd00709, F=0x0, S=1,        8
-0,        335,        336,        1,       24, 0x4da4064a, F=0x0, S=1,        8
-0,        336,        337,        1,       24, 0x5264068a, F=0x0, S=1,        8
-0,        337,        338,        1,       24, 0x572406ca, F=0x0, S=1,        8
-0,        338,        339,        1,       24, 0x5be4070a, F=0x0, S=1,        8
-0,        339,        340,        1,       24, 0x4db8064b, F=0x0, S=1,        8
-0,        340,        341,        1,       24, 0x5278068b, F=0x0, S=1,        8
-0,        341,        342,        1,       24, 0x573806cb, F=0x0, S=1,        8
-0,        342,        343,        1,       24, 0x5bf8070b, F=0x0, S=1,        8
-0,        343,        344,        1,       24, 0x4dcc064c, F=0x0, S=1,        8
-0,        344,        345,        1,       24, 0x528c068c, F=0x0, S=1,        8
-0,        345,        346,        1,       24, 0x574c06cc, F=0x0, S=1,        8
-0,        346,        347,        1,       24, 0x5c0c070c, F=0x0, S=1,        8
-0,        347,        348,        1,       24, 0x4de0064d, F=0x0, S=1,        8
-0,        348,        349,        1,       24, 0x52a0068d, F=0x0, S=1,        8
-0,        349,        350,        1,       24, 0x576006cd, F=0x0, S=1,        8
-0,        350,        351,        1,       24, 0x5c20070d, F=0x0, S=1,        8
-0,        351,        352,        1,       24, 0x4df4064e, F=0x0, S=1,        8
-0,        352,        353,        1,       24, 0x52b4068e, F=0x0, S=1,        8
-0,        353,        354,        1,       24, 0x577406ce, F=0x0, S=1,        8
-0,        354,        355,        1,       24, 0x5c34070e, F=0x0, S=1,        8
-0,        355,        356,        1,       24, 0x4e08064f, F=0x0, S=1,        8
-0,        356,        357,        1,       24, 0x52c8068f, F=0x0, S=1,        8
-0,        357,        358,        1,       24, 0x578806cf, F=0x0, S=1,        8
-0,        358,        359,        1,       24, 0x5c48070f, F=0x0, S=1,        8
-0,        359,        360,        1,       24, 0x4e1c0650, F=0x0, S=1,        8
-0,        360,        361,        1,       24, 0x52dc0690, F=0x0, S=1,        8
-0,        361,        362,        1,       24, 0x579c06d0, F=0x0, S=1,        8
-0,        362,        363,        1,       24, 0x5c5c0710, F=0x0, S=1,        8
-0,        363,        364,        1,       24, 0x4e300651, F=0x0, S=1,        8
-0,        364,        365,        1,       24, 0x52f00691, F=0x0, S=1,        8
-0,        365,        366,        1,       24, 0x57b006d1, F=0x0, S=1,        8
-0,        366,        367,        1,       24, 0x5c700711, F=0x0, S=1,        8
-0,        367,        368,        1,       24, 0x4e440652, F=0x0, S=1,        8
-0,        368,        369,        1,       24, 0x53040692, F=0x0, S=1,        8
-0,        369,        370,        1,       24, 0x57c406d2, F=0x0, S=1,        8
-0,        370,        371,        1,       24, 0x5c840712, F=0x0, S=1,        8
-0,        371,        372,        1,       24, 0x4e580653, F=0x0, S=1,        8
-0,        372,        373,        1,       24, 0x53180693, F=0x0, S=1,        8
-0,        373,        374,        1,       24, 0x57d806d3, F=0x0, S=1,        8
-0,        374,        375,        1,       24, 0x5c980713, F=0x0, S=1,        8
-0,        375,        376,        1,       24, 0x4e6c0654, F=0x0, S=1,        8
-0,        376,        377,        1,       24, 0x532c0694, F=0x0, S=1,        8
-0,        377,        378,        1,       24, 0x57ec06d4, F=0x0, S=1,        8
-0,        378,        379,        1,       24, 0x5cac0714, F=0x0, S=1,        8
-0,        379,        380,        1,       24, 0x4e800655, F=0x0, S=1,        8
-0,        380,        381,        1,       24, 0x53400695, F=0x0, S=1,        8
-0,        381,        382,        1,       24, 0x580006d5, F=0x0, S=1,        8
-0,        382,        383,        1,       24, 0x5cc00715, F=0x0, S=1,        8
-0,        383,        384,        1,       24, 0x4e940656, F=0x0, S=1,        8
-0,        384,        385,        1,       24, 0x53540696, F=0x0, S=1,        8
-0,        385,        386,        1,       24, 0x581406d6, F=0x0, S=1,        8
-0,        386,        387,        1,       24, 0x5cd40716, F=0x0, S=1,        8
-0,        387,        388,        1,       24, 0x4ea80657, F=0x0, S=1,        8
-0,        388,        389,        1,       24, 0x53680697, F=0x0, S=1,        8
-0,        389,        390,        1,       24, 0x582806d7, F=0x0, S=1,        8
-0,        390,        391,        1,       24, 0x5ce80717, F=0x0, S=1,        8
-0,        391,        392,        1,       24, 0x4ebc0658, F=0x0, S=1,        8
-0,        392,        393,        1,       24, 0x537c0698, F=0x0, S=1,        8
-0,        393,        394,        1,       24, 0x583c06d8, F=0x0, S=1,        8
-0,        394,        395,        1,       24, 0x5cfc0718, F=0x0, S=1,        8
-0,        395,        396,        1,       24, 0x4ed00659, F=0x0, S=1,        8
-0,        396,        397,        1,       24, 0x53900699, F=0x0, S=1,        8
-0,        397,        398,        1,       24, 0x585006d9, F=0x0, S=1,        8
-0,        398,        399,        1,       24, 0x5d100719, F=0x0, S=1,        8
-0,        399,        400,        1,       24, 0x4ee4065a, F=0x0, S=1,        8
-0,        400,        401,        1,       24, 0x53a4069a, F=0x0, S=1,        8
-0,        401,        402,        1,       24, 0x586406da, F=0x0, S=1,        8
-0,        402,        403,        1,       24, 0x5d24071a, F=0x0, S=1,        8
-0,        403,        404,        1,       24, 0x4ef8065b, F=0x0, S=1,        8
-0,        404,        405,        1,       24, 0x53b8069b, F=0x0, S=1,        8
-0,        405,        406,        1,       24, 0x587806db, F=0x0, S=1,        8
-0,        406,        407,        1,       24, 0x5d38071b, F=0x0, S=1,        8
-0,        407,        408,        1,       24, 0x4f0c065c, F=0x0, S=1,        8
-0,        408,        409,        1,       24, 0x53cc069c, F=0x0, S=1,        8
-0,        409,        410,        1,       24, 0x588c06dc, F=0x0, S=1,        8
-0,        410,        411,        1,       24, 0x5d4c071c, F=0x0, S=1,        8
-0,        411,        412,        1,       24, 0x4f20065d, F=0x0, S=1,        8
-0,        412,        413,        1,       24, 0x53e0069d, F=0x0, S=1,        8
-0,        413,        414,        1,       24, 0x58a006dd, F=0x0, S=1,        8
-0,        414,        415,        1,       24, 0x5d60071d, F=0x0, S=1,        8
-0,        415,        416,        1,       24, 0x4f34065e, F=0x0, S=1,        8
-0,        416,        417,        1,       24, 0x53f4069e, F=0x0, S=1,        8
-0,        417,        418,        1,       24, 0x58b406de, F=0x0, S=1,        8
-0,        418,        419,        1,       24, 0x5d74071e, F=0x0, S=1,        8
-0,        419,        420,        1,       24, 0x4f48065f, F=0x0, S=1,        8
-0,        420,        421,        1,       24, 0x5408069f, F=0x0, S=1,        8
-0,        421,        422,        1,       24, 0x58c806df, F=0x0, S=1,        8
-0,        422,        423,        1,       24, 0x5d88071f, F=0x0, S=1,        8
-0,        423,        424,        1,       24, 0x4f5c0660, F=0x0, S=1,        8
-0,        424,        425,        1,       24, 0x541c06a0, F=0x0, S=1,        8
-0,        425,        426,        1,       24, 0x58dc06e0, F=0x0, S=1,        8
-0,        426,        427,        1,       24, 0x5d9c0720, F=0x0, S=1,        8
-0,        427,        428,        1,       24, 0x4f700661, F=0x0, S=1,        8
-0,        428,        429,        1,       24, 0x543006a1, F=0x0, S=1,        8
-0,        429,        430,        1,       24, 0x58f006e1, F=0x0, S=1,        8
-0,        430,        431,        1,       24, 0x5db00721, F=0x0, S=1,        8
-0,        431,        432,        1,       24, 0x4f840662, F=0x0, S=1,        8
-0,        432,        433,        1,       24, 0x544406a2, F=0x0, S=1,        8
-0,        433,        434,        1,       24, 0x590406e2, F=0x0, S=1,        8
-0,        434,        435,        1,       24, 0x5dc40722, F=0x0, S=1,        8
-0,        435,        436,        1,       24, 0x4f980663, F=0x0, S=1,        8
-0,        436,        437,        1,       24, 0x545806a3, F=0x0, S=1,        8
-0,        437,        438,        1,       24, 0x591806e3, F=0x0, S=1,        8
-0,        438,        439,        1,       24, 0x5dd80723, F=0x0, S=1,        8
-0,        439,        440,        1,       24, 0x4fac0664, F=0x0, S=1,        8
-0,        440,        441,        1,       24, 0x546c06a4, F=0x0, S=1,        8
-0,        441,        442,        1,       24, 0x592c06e4, F=0x0, S=1,        8
-0,        442,        443,        1,       24, 0x5dec0724, F=0x0, S=1,        8
-0,        443,        444,        1,       24, 0x4fc00665, F=0x0, S=1,        8
-0,        444,        445,        1,       24, 0x548006a5, F=0x0, S=1,        8
-0,        445,        446,        1,       24, 0x594006e5, F=0x0, S=1,        8
-0,        446,        447,        1,       24, 0x5e000725, F=0x0, S=1,        8
-0,        447,        448,        1,       24, 0x4fd40666, F=0x0, S=1,        8
-0,        448,        449,        1,       24, 0x549406a6, F=0x0, S=1,        8
-0,        449,        450,        1,       24, 0x595406e6, F=0x0, S=1,        8
-0,        450,        451,        1,       24, 0x5e140726, F=0x0, S=1,        8
-0,        451,        452,        1,       24, 0x4fe80667, F=0x0, S=1,        8
-0,        452,        453,        1,       24, 0x54a806a7, F=0x0, S=1,        8
-0,        453,        454,        1,       24, 0x596806e7, F=0x0, S=1,        8
-0,        454,        455,        1,       24, 0x5e280727, F=0x0, S=1,        8
-0,        455,        456,        1,       24, 0x4ffc0668, F=0x0, S=1,        8
-0,        456,        457,        1,       24, 0x54bc06a8, F=0x0, S=1,        8
-0,        457,        458,        1,       24, 0x597c06e8, F=0x0, S=1,        8
-0,        458,        459,        1,       24, 0x5e3c0728, F=0x0, S=1,        8
-0,        459,        460,        1,       24, 0x50100669, F=0x0, S=1,        8
-0,        460,        461,        1,       24, 0x54d006a9, F=0x0, S=1,        8
-0,        461,        462,        1,       24, 0x599006e9, F=0x0, S=1,        8
-0,        462,        463,        1,       24, 0x5e500729, F=0x0, S=1,        8
-0,        463,        464,        1,       24, 0x5024066a, F=0x0, S=1,        8
-0,        464,        465,        1,       24, 0x54e406aa, F=0x0, S=1,        8
-0,        465,        466,        1,       24, 0x59a406ea, F=0x0, S=1,        8
-0,        466,        467,        1,       24, 0x5e64072a, F=0x0, S=1,        8
-0,        467,        468,        1,       24, 0x5038066b, F=0x0, S=1,        8
-0,        468,        469,        1,       24, 0x54f806ab, F=0x0, S=1,        8
-0,        469,        470,        1,       24, 0x59b806eb, F=0x0, S=1,        8
-0,        470,        471,        1,       24, 0x5e78072b, F=0x0, S=1,        8
-0,        471,        472,        1,       24, 0x504c066c, F=0x0, S=1,        8
-0,        472,        473,        1,       24, 0x550c06ac, F=0x0, S=1,        8
-0,        473,        474,        1,       24, 0x59cc06ec, F=0x0, S=1,        8
-0,        474,        475,        1,       24, 0x5e8c072c, F=0x0, S=1,        8
-0,        475,        476,        1,       24, 0x5060066d, F=0x0, S=1,        8
-0,        476,        477,        1,       24, 0x552006ad, F=0x0, S=1,        8
-0,        477,        478,        1,       24, 0x59e006ed, F=0x0, S=1,        8
-0,        478,        479,        1,       24, 0x5ea0072d, F=0x0, S=1,        8
-0,        479,        480,        1,       24, 0x5074066e, F=0x0, S=1,        8
-0,        480,        481,        1,       24, 0x553406ae, F=0x0, S=1,        8
-0,        481,        482,        1,       24, 0x59f406ee, F=0x0, S=1,        8
-0,        482,        483,        1,       24, 0x5eb4072e, F=0x0, S=1,        8
-0,        483,        484,        1,       24, 0x5088066f, F=0x0, S=1,        8
-0,        484,        485,        1,       24, 0x554806af, F=0x0, S=1,        8
-0,        485,        486,        1,       24, 0x5a0806ef, F=0x0, S=1,        8
-0,        486,        487,        1,       24, 0x5ec8072f, F=0x0, S=1,        8
-0,        487,        488,        1,       24, 0x509c0670, F=0x0, S=1,        8
-0,        488,        489,        1,       24, 0x555c06b0, F=0x0, S=1,        8
-0,        489,        490,        1,       24, 0x5a1c06f0, F=0x0, S=1,        8
-0,        490,        491,        1,       24, 0x5edc0730, F=0x0, S=1,        8
-0,        491,        492,        1,       24, 0x50b00671, F=0x0, S=1,        8
-0,        492,        493,        1,       24, 0x557006b1, F=0x0, S=1,        8
-0,        493,        494,        1,       24, 0x5a3006f1, F=0x0, S=1,        8
-0,        494,        495,        1,       24, 0x5ef00731, F=0x0, S=1,        8
-0,        495,        496,        1,       24, 0x50c40672, F=0x0, S=1,        8
-0,        496,        497,        1,       24, 0x558406b2, F=0x0, S=1,        8
-0,        497,        498,        1,       24, 0x5a4406f2, F=0x0, S=1,        8
-0,        498,        499,        1,       24, 0x5f040732, F=0x0, S=1,        8
-0,        499,        500,        1,       24, 0x50d80673, F=0x0, S=1,        8
-0,        500,        501,        1,       24, 0x559806b3, F=0x0, S=1,        8
-0,        501,        502,        1,       24, 0x5a5806f3, F=0x0, S=1,        8
-0,        502,        503,        1,       24, 0x5f180733, F=0x0, S=1,        8
-0,        503,        504,        1,       24, 0x50ec0674, F=0x0, S=1,        8
-0,        504,        505,        1,       24, 0x55ac06b4, F=0x0, S=1,        8
-0,        505,        506,        1,       24, 0x5a6c06f4, F=0x0, S=1,        8
-0,        506,        507,        1,       24, 0x5f2c0734, F=0x0, S=1,        8
-0,        507,        508,        1,       24, 0x51000675, F=0x0, S=1,        8
-0,        508,        509,        1,       24, 0x55c006b5, F=0x0, S=1,        8
-0,        509,        510,        1,       24, 0x5a8006f5, F=0x0, S=1,        8
-0,        510,        511,        1,       24, 0x5f400735, F=0x0, S=1,        8
-0,        511,        512,        1,       24, 0x51140676, F=0x0, S=1,        8
-0,        512,        513,        1,       24, 0x55d406b6, F=0x0, S=1,        8
-0,        513,        514,        1,       24, 0x5a9406f6, F=0x0, S=1,        8
-0,        514,        515,        1,       24, 0x5f540736, F=0x0, S=1,        8
-0,        515,        516,        1,       24, 0x51280677, F=0x0, S=1,        8
-0,        516,        517,        1,       24, 0x55e806b7, F=0x0, S=1,        8
-0,        517,        518,        1,       24, 0x5aa806f7, F=0x0, S=1,        8
-0,        518,        519,        1,       24, 0x5f680737, F=0x0, S=1,        8
-0,        519,        520,        1,       24, 0x513c0678, F=0x0, S=1,        8
-0,        520,        521,        1,       24, 0x55fc06b8, F=0x0, S=1,        8
-0,        521,        522,        1,       24, 0x5abc06f8, F=0x0, S=1,        8
-0,        522,        523,        1,       24, 0x5f7c0738, F=0x0, S=1,        8
-0,        523,        524,        1,       24, 0x51500679, F=0x0, S=1,        8
-0,        524,        525,        1,       24, 0x561006b9, F=0x0, S=1,        8
-0,        525,        526,        1,       57, 0x896e0f04, S=1,        8
-0,        526,        527,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,        527,        528,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,        528,        529,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,        529,        530,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,        530,        531,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,        531,        532,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,        532,        533,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,        533,        534,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,        534,        535,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,        535,        536,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,        536,        537,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,        537,        538,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,        538,        539,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,        539,        540,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,        540,        541,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,        541,        542,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,        542,        543,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,        543,        544,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,        544,        545,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,        545,        546,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,        546,        547,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,        547,        548,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,        548,        549,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,        549,        550,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,        550,        551,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,        551,        552,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,        552,        553,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,        553,        554,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,        554,        555,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,        555,        556,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,        556,        557,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,        557,        558,        1,       24, 0x4afc0628, F=0x0, S=1,        8
-0,        558,        559,        1,       24, 0x4fbc0668, F=0x0, S=1,        8
-0,        559,        560,        1,       24, 0x547c06a8, F=0x0, S=1,        8
-0,        560,        561,        1,       24, 0x593c06e8, F=0x0, S=1,        8
-0,        561,        562,        1,       24, 0x4b100629, F=0x0, S=1,        8
-0,        562,        563,        1,       24, 0x4fd00669, F=0x0, S=1,        8
-0,        563,        564,        1,       24, 0x549006a9, F=0x0, S=1,        8
-0,        564,        565,        1,       24, 0x595006e9, F=0x0, S=1,        8
-0,        565,        566,        1,       24, 0x4b24062a, F=0x0, S=1,        8
-0,        566,        567,        1,       24, 0x4fe4066a, F=0x0, S=1,        8
-0,        567,        568,        1,       24, 0x54a406aa, F=0x0, S=1,        8
-0,        568,        569,        1,       24, 0x596406ea, F=0x0, S=1,        8
-0,        569,        570,        1,       24, 0x4b38062b, F=0x0, S=1,        8
-0,        570,        571,        1,       24, 0x4ff8066b, F=0x0, S=1,        8
-0,        571,        572,        1,       24, 0x54b806ab, F=0x0, S=1,        8
-0,        572,        573,        1,       24, 0x597806eb, F=0x0, S=1,        8
-0,        573,        574,        1,       24, 0x4b4c062c, F=0x0, S=1,        8
-0,        574,        575,        1,       24, 0x500c066c, F=0x0, S=1,        8
-0,        575,        576,        1,       57, 0x901d0f3f, S=1,        8
-0,        576,        577,        1,       24, 0x4f1c0660, F=0x0, S=1,        8
-0,        577,        578,        1,       24, 0x53dc06a0, F=0x0, S=1,        8
-0,        578,        579,        1,       24, 0x589c06e0, F=0x0, S=1,        8
-0,        579,        580,        1,       24, 0x4a700621, F=0x0, S=1,        8
-0,        580,        581,        1,       24, 0x4f300661, F=0x0, S=1,        8
-0,        581,        582,        1,       24, 0x53f006a1, F=0x0, S=1,        8
-0,        582,        583,        1,       24, 0x58b006e1, F=0x0, S=1,        8
-0,        583,        584,        1,       24, 0x4a840622, F=0x0, S=1,        8
-0,        584,        585,        1,       24, 0x4f440662, F=0x0, S=1,        8
-0,        585,        586,        1,       24, 0x540406a2, F=0x0, S=1,        8
-0,        586,        587,        1,       24, 0x58c406e2, F=0x0, S=1,        8
-0,        587,        588,        1,       24, 0x4a980623, F=0x0, S=1,        8
-0,        588,        589,        1,       24, 0x4f580663, F=0x0, S=1,        8
-0,        589,        590,        1,       24, 0x541806a3, F=0x0, S=1,        8
-0,        590,        591,        1,       24, 0x58d806e3, F=0x0, S=1,        8
-0,        591,        592,        1,       24, 0x4aac0624, F=0x0, S=1,        8
-0,        592,        593,        1,       24, 0x4f6c0664, F=0x0, S=1,        8
-0,        593,        594,        1,       24, 0x542c06a4, F=0x0, S=1,        8
-0,        594,        595,        1,       24, 0x58ec06e4, F=0x0, S=1,        8
-0,        595,        596,        1,       24, 0x4ac00625, F=0x0, S=1,        8
-0,        596,        597,        1,       24, 0x4f800665, F=0x0, S=1,        8
-0,        597,        598,        1,       24, 0x544006a5, F=0x0, S=1,        8
-0,        598,        599,        1,       24, 0x590006e5, F=0x0, S=1,        8
-0,        599,        600,        1,       24, 0x4ad40626, F=0x0, S=1,        8
-0,        600,        601,        1,       24, 0x4f940666, F=0x0, S=1,        8
-0,        601,        602,        1,       24, 0x545406a6, F=0x0, S=1,        8
-0,        602,        603,        1,       24, 0x591406e6, F=0x0, S=1,        8
-0,        603,        604,        1,       24, 0x4ae80627, F=0x0, S=1,        8
-0,        604,        605,        1,       24, 0x4fa80667, F=0x0, S=1,        8
-0,        605,        606,        1,       24, 0x546806a7, F=0x0, S=1,        8
-0,        606,        607,        1,       24, 0x592806e7, F=0x0, S=1,        8
-0,        607,        608,        1,       24, 0x4afc0628, F=0x0, S=1,        8
-0,        608,        609,        1,       24, 0x4fbc0668, F=0x0, S=1,        8
-0,        609,        610,        1,       24, 0x547c06a8, F=0x0, S=1,        8
-0,        610,        611,        1,       24, 0x593c06e8, F=0x0, S=1,        8
+0,         -1,          0,        1,       57, 0x8baa0f1a, S=1,        8, 0x05ec00be
+0,          0,          1,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,          1,          2,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,          2,          3,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,          3,          4,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,          4,          5,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,          5,          6,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,          6,          7,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,          7,          8,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,          8,          9,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,          9,         10,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,         10,         11,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,         11,         12,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,         12,         13,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,         13,         14,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,         14,         15,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,         15,         16,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,         16,         17,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,         17,         18,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,         18,         19,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,         19,         20,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,         20,         21,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,         21,         22,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,         22,         23,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,         23,         24,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,         24,         25,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,         25,         26,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,         26,         27,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,         27,         28,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,         28,         29,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,         29,         30,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,         30,         31,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,         31,         32,        1,       24, 0x4afc0628, F=0x0, S=1,        8, 0x076800ee
+0,         32,         33,        1,       24, 0x4fbc0668, F=0x0, S=1,        8, 0x076800ee
+0,         33,         34,        1,       24, 0x547c06a8, F=0x0, S=1,        8, 0x076800ee
+0,         34,         35,        1,       24, 0x593c06e8, F=0x0, S=1,        8, 0x076800ee
+0,         35,         36,        1,       24, 0x4b100629, F=0x0, S=1,        8, 0x076800ee
+0,         36,         37,        1,       24, 0x4fd00669, F=0x0, S=1,        8, 0x076800ee
+0,         37,         38,        1,       24, 0x549006a9, F=0x0, S=1,        8, 0x076800ee
+0,         38,         39,        1,       24, 0x595006e9, F=0x0, S=1,        8, 0x076800ee
+0,         39,         40,        1,       24, 0x4b24062a, F=0x0, S=1,        8, 0x076800ee
+0,         40,         41,        1,       24, 0x4fe4066a, F=0x0, S=1,        8, 0x076800ee
+0,         41,         42,        1,       24, 0x54a406aa, F=0x0, S=1,        8, 0x076800ee
+0,         42,         43,        1,       24, 0x596406ea, F=0x0, S=1,        8, 0x076800ee
+0,         43,         44,        1,       24, 0x4b38062b, F=0x0, S=1,        8, 0x076800ee
+0,         44,         45,        1,       24, 0x4ff8066b, F=0x0, S=1,        8, 0x076800ee
+0,         45,         46,        1,       24, 0x54b806ab, F=0x0, S=1,        8, 0x076800ee
+0,         46,         47,        1,       24, 0x597806eb, F=0x0, S=1,        8, 0x076800ee
+0,         47,         48,        1,       24, 0x4b4c062c, F=0x0, S=1,        8, 0x076800ee
+0,         48,         49,        1,       24, 0x500c066c, F=0x0, S=1,        8, 0x076800ee
+0,         49,         50,        1,       24, 0x54cc06ac, F=0x0, S=1,        8, 0x076800ee
+0,         50,         51,        1,       24, 0x598c06ec, F=0x0, S=1,        8, 0x076800ee
+0,         51,         52,        1,       24, 0x4b60062d, F=0x0, S=1,        8, 0x076800ee
+0,         52,         53,        1,       24, 0x5020066d, F=0x0, S=1,        8, 0x076800ee
+0,         53,         54,        1,       24, 0x54e006ad, F=0x0, S=1,        8, 0x076800ee
+0,         54,         55,        1,       24, 0x59a006ed, F=0x0, S=1,        8, 0x076800ee
+0,         55,         56,        1,       24, 0x4b74062e, F=0x0, S=1,        8, 0x076800ee
+0,         56,         57,        1,       24, 0x5034066e, F=0x0, S=1,        8, 0x076800ee
+0,         57,         58,        1,       24, 0x54f406ae, F=0x0, S=1,        8, 0x076800ee
+0,         58,         59,        1,       24, 0x59b406ee, F=0x0, S=1,        8, 0x076800ee
+0,         59,         60,        1,       24, 0x4b88062f, F=0x0, S=1,        8, 0x076800ee
+0,         60,         61,        1,       24, 0x5048066f, F=0x0, S=1,        8, 0x076800ee
+0,         61,         62,        1,       24, 0x550806af, F=0x0, S=1,        8, 0x076800ee
+0,         62,         63,        1,       24, 0x59c806ef, F=0x0, S=1,        8, 0x076800ee
+0,         63,         64,        1,       24, 0x4b9c0630, F=0x0, S=1,        8, 0x076800ee
+0,         64,         65,        1,       24, 0x505c0670, F=0x0, S=1,        8, 0x076800ee
+0,         65,         66,        1,       24, 0x551c06b0, F=0x0, S=1,        8, 0x076800ee
+0,         66,         67,        1,       24, 0x59dc06f0, F=0x0, S=1,        8, 0x076800ee
+0,         67,         68,        1,       24, 0x4bb00631, F=0x0, S=1,        8, 0x076800ee
+0,         68,         69,        1,       24, 0x50700671, F=0x0, S=1,        8, 0x076800ee
+0,         69,         70,        1,       24, 0x553006b1, F=0x0, S=1,        8, 0x076800ee
+0,         70,         71,        1,       24, 0x59f006f1, F=0x0, S=1,        8, 0x076800ee
+0,         71,         72,        1,       24, 0x4bc40632, F=0x0, S=1,        8, 0x076800ee
+0,         72,         73,        1,       24, 0x50840672, F=0x0, S=1,        8, 0x076800ee
+0,         73,         74,        1,       24, 0x554406b2, F=0x0, S=1,        8, 0x076800ee
+0,         74,         75,        1,       24, 0x5a0406f2, F=0x0, S=1,        8, 0x076800ee
+0,         75,         76,        1,       24, 0x4bd80633, F=0x0, S=1,        8, 0x076800ee
+0,         76,         77,        1,       24, 0x50980673, F=0x0, S=1,        8, 0x076800ee
+0,         77,         78,        1,       24, 0x555806b3, F=0x0, S=1,        8, 0x076800ee
+0,         78,         79,        1,       24, 0x5a1806f3, F=0x0, S=1,        8, 0x076800ee
+0,         79,         80,        1,       24, 0x4bec0634, F=0x0, S=1,        8, 0x076800ee
+0,         80,         81,        1,       24, 0x50ac0674, F=0x0, S=1,        8, 0x076800ee
+0,         81,         82,        1,       24, 0x556c06b4, F=0x0, S=1,        8, 0x076800ee
+0,         82,         83,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8, 0x076800ee
+0,         83,         84,        1,       24, 0x4c000635, F=0x0, S=1,        8, 0x076800ee
+0,         84,         85,        1,       24, 0x50c00675, F=0x0, S=1,        8, 0x076800ee
+0,         85,         86,        1,       24, 0x558006b5, F=0x0, S=1,        8, 0x076800ee
+0,         86,         87,        1,       24, 0x5a4006f5, F=0x0, S=1,        8, 0x076800ee
+0,         87,         88,        1,       24, 0x4c140636, F=0x0, S=1,        8, 0x076800ee
+0,         88,         89,        1,       24, 0x50d40676, F=0x0, S=1,        8, 0x076800ee
+0,         89,         90,        1,       24, 0x559406b6, F=0x0, S=1,        8, 0x076800ee
+0,         90,         91,        1,       24, 0x5a5406f6, F=0x0, S=1,        8, 0x076800ee
+0,         91,         92,        1,       24, 0x4c280637, F=0x0, S=1,        8, 0x076800ee
+0,         92,         93,        1,       24, 0x50e80677, F=0x0, S=1,        8, 0x076800ee
+0,         93,         94,        1,       24, 0x55a806b7, F=0x0, S=1,        8, 0x076800ee
+0,         94,         95,        1,       24, 0x5a6806f7, F=0x0, S=1,        8, 0x076800ee
+0,         95,         96,        1,       24, 0x4c3c0638, F=0x0, S=1,        8, 0x076800ee
+0,         96,         97,        1,       24, 0x50fc0678, F=0x0, S=1,        8, 0x076800ee
+0,         97,         98,        1,       24, 0x55bc06b8, F=0x0, S=1,        8, 0x076800ee
+0,         98,         99,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8, 0x076800ee
+0,         99,        100,        1,       24, 0x4c500639, F=0x0, S=1,        8, 0x076800ee
+0,        100,        101,        1,       24, 0x51100679, F=0x0, S=1,        8, 0x076800ee
+0,        101,        102,        1,       24, 0x55d006b9, F=0x0, S=1,        8, 0x076800ee
+0,        102,        103,        1,       24, 0x5a9006f9, F=0x0, S=1,        8, 0x076800ee
+0,        103,        104,        1,       24, 0x4c64063a, F=0x0, S=1,        8, 0x076800ee
+0,        104,        105,        1,       24, 0x5124067a, F=0x0, S=1,        8, 0x076800ee
+0,        105,        106,        1,       24, 0x55e406ba, F=0x0, S=1,        8, 0x076800ee
+0,        106,        107,        1,       24, 0x5aa406fa, F=0x0, S=1,        8, 0x076800ee
+0,        107,        108,        1,       24, 0x4c78063b, F=0x0, S=1,        8, 0x076800ee
+0,        108,        109,        1,       24, 0x5138067b, F=0x0, S=1,        8, 0x076800ee
+0,        109,        110,        1,       24, 0x55f806bb, F=0x0, S=1,        8, 0x076800ee
+0,        110,        111,        1,       24, 0x5ab806fb, F=0x0, S=1,        8, 0x076800ee
+0,        111,        112,        1,       24, 0x4c8c063c, F=0x0, S=1,        8, 0x076800ee
+0,        112,        113,        1,       24, 0x514c067c, F=0x0, S=1,        8, 0x076800ee
+0,        113,        114,        1,       24, 0x560c06bc, F=0x0, S=1,        8, 0x076800ee
+0,        114,        115,        1,       24, 0x5acc06fc, F=0x0, S=1,        8, 0x076800ee
+0,        115,        116,        1,       24, 0x4ca0063d, F=0x0, S=1,        8, 0x076800ee
+0,        116,        117,        1,       24, 0x5160067d, F=0x0, S=1,        8, 0x076800ee
+0,        117,        118,        1,       24, 0x562006bd, F=0x0, S=1,        8, 0x076800ee
+0,        118,        119,        1,       24, 0x5ae006fd, F=0x0, S=1,        8, 0x076800ee
+0,        119,        120,        1,       24, 0x4cb4063e, F=0x0, S=1,        8, 0x076800ee
+0,        120,        121,        1,       24, 0x5174067e, F=0x0, S=1,        8, 0x076800ee
+0,        121,        122,        1,       24, 0x563406be, F=0x0, S=1,        8, 0x076800ee
+0,        122,        123,        1,       24, 0x5af406fe, F=0x0, S=1,        8, 0x076800ee
+0,        123,        124,        1,       24, 0x4cc8063f, F=0x0, S=1,        8, 0x076800ee
+0,        124,        125,        1,       24, 0x5188067f, F=0x0, S=1,        8, 0x076800ee
+0,        125,        126,        1,       24, 0x564806bf, F=0x0, S=1,        8, 0x076800ee
+0,        126,        127,        1,       24, 0x5b0806ff, F=0x0, S=1,        8, 0x076800ee
+0,        127,        128,        1,       24, 0x4cdc0640, F=0x0, S=1,        8, 0x076800ee
+0,        128,        129,        1,       24, 0x519c0680, F=0x0, S=1,        8, 0x076800ee
+0,        129,        130,        1,       24, 0x565c06c0, F=0x0, S=1,        8, 0x076800ee
+0,        130,        131,        1,       24, 0x5b1c0700, F=0x0, S=1,        8, 0x076800ee
+0,        131,        132,        1,       24, 0x4cf00641, F=0x0, S=1,        8, 0x076800ee
+0,        132,        133,        1,       24, 0x51b00681, F=0x0, S=1,        8, 0x076800ee
+0,        133,        134,        1,       24, 0x567006c1, F=0x0, S=1,        8, 0x076800ee
+0,        134,        135,        1,       24, 0x5b300701, F=0x0, S=1,        8, 0x076800ee
+0,        135,        136,        1,       24, 0x4d040642, F=0x0, S=1,        8, 0x076800ee
+0,        136,        137,        1,       24, 0x51c40682, F=0x0, S=1,        8, 0x076800ee
+0,        137,        138,        1,       24, 0x568406c2, F=0x0, S=1,        8, 0x076800ee
+0,        138,        139,        1,       24, 0x5b440702, F=0x0, S=1,        8, 0x076800ee
+0,        139,        140,        1,       24, 0x4d180643, F=0x0, S=1,        8, 0x076800ee
+0,        140,        141,        1,       24, 0x51d80683, F=0x0, S=1,        8, 0x076800ee
+0,        141,        142,        1,       24, 0x569806c3, F=0x0, S=1,        8, 0x076800ee
+0,        142,        143,        1,       24, 0x5b580703, F=0x0, S=1,        8, 0x076800ee
+0,        143,        144,        1,       24, 0x4d2c0644, F=0x0, S=1,        8, 0x076800ee
+0,        144,        145,        1,       24, 0x51ec0684, F=0x0, S=1,        8, 0x076800ee
+0,        145,        146,        1,       24, 0x56ac06c4, F=0x0, S=1,        8, 0x076800ee
+0,        146,        147,        1,       24, 0x5b6c0704, F=0x0, S=1,        8, 0x076800ee
+0,        147,        148,        1,       24, 0x4d400645, F=0x0, S=1,        8, 0x076800ee
+0,        148,        149,        1,       24, 0x52000685, F=0x0, S=1,        8, 0x076800ee
+0,        149,        150,        1,       24, 0x56c006c5, F=0x0, S=1,        8, 0x076800ee
+0,        150,        151,        1,       24, 0x5b800705, F=0x0, S=1,        8, 0x076800ee
+0,        151,        152,        1,       24, 0x4d540646, F=0x0, S=1,        8, 0x076800ee
+0,        152,        153,        1,       24, 0x52140686, F=0x0, S=1,        8, 0x076800ee
+0,        153,        154,        1,       24, 0x56d406c6, F=0x0, S=1,        8, 0x076800ee
+0,        154,        155,        1,       24, 0x5b940706, F=0x0, S=1,        8, 0x076800ee
+0,        155,        156,        1,       24, 0x4d680647, F=0x0, S=1,        8, 0x076800ee
+0,        156,        157,        1,       24, 0x52280687, F=0x0, S=1,        8, 0x076800ee
+0,        157,        158,        1,       24, 0x56e806c7, F=0x0, S=1,        8, 0x076800ee
+0,        158,        159,        1,       24, 0x5ba80707, F=0x0, S=1,        8, 0x076800ee
+0,        159,        160,        1,       24, 0x4d7c0648, F=0x0, S=1,        8, 0x076800ee
+0,        160,        161,        1,       24, 0x523c0688, F=0x0, S=1,        8, 0x076800ee
+0,        161,        162,        1,       24, 0x56fc06c8, F=0x0, S=1,        8, 0x076800ee
+0,        162,        163,        1,       24, 0x5bbc0708, F=0x0, S=1,        8, 0x076800ee
+0,        163,        164,        1,       24, 0x4d900649, F=0x0, S=1,        8, 0x076800ee
+0,        164,        165,        1,       24, 0x52500689, F=0x0, S=1,        8, 0x076800ee
+0,        165,        166,        1,       24, 0x571006c9, F=0x0, S=1,        8, 0x076800ee
+0,        166,        167,        1,       24, 0x5bd00709, F=0x0, S=1,        8, 0x076800ee
+0,        167,        168,        1,       57, 0x97cf0f83, S=1,        8, 0x05ec00be
+0,        168,        169,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,        169,        170,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,        170,        171,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,        171,        172,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,        172,        173,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,        173,        174,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,        174,        175,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,        175,        176,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,        176,        177,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,        177,        178,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,        178,        179,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,        179,        180,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,        180,        181,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,        181,        182,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,        182,        183,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,        183,        184,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,        184,        185,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,        185,        186,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        186,        187,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,        187,        188,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,        188,        189,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,        189,        190,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,        190,        191,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,        191,        192,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,        192,        193,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,        193,        194,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,        194,        195,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,        195,        196,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,        196,        197,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,        197,        198,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,        198,        199,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,        199,        200,        1,       24, 0x4afc0628, F=0x0, S=1,        8, 0x076800ee
+0,        200,        201,        1,       24, 0x4fbc0668, F=0x0, S=1,        8, 0x076800ee
+0,        201,        202,        1,       24, 0x547c06a8, F=0x0, S=1,        8, 0x076800ee
+0,        202,        203,        1,       24, 0x593c06e8, F=0x0, S=1,        8, 0x076800ee
+0,        203,        204,        1,       24, 0x4b100629, F=0x0, S=1,        8, 0x076800ee
+0,        204,        205,        1,       24, 0x4fd00669, F=0x0, S=1,        8, 0x076800ee
+0,        205,        206,        1,       24, 0x549006a9, F=0x0, S=1,        8, 0x076800ee
+0,        206,        207,        1,       24, 0x595006e9, F=0x0, S=1,        8, 0x076800ee
+0,        207,        208,        1,       24, 0x4b24062a, F=0x0, S=1,        8, 0x076800ee
+0,        208,        209,        1,       24, 0x4fe4066a, F=0x0, S=1,        8, 0x076800ee
+0,        209,        210,        1,       24, 0x54a406aa, F=0x0, S=1,        8, 0x076800ee
+0,        210,        211,        1,       24, 0x596406ea, F=0x0, S=1,        8, 0x076800ee
+0,        211,        212,        1,       24, 0x4b38062b, F=0x0, S=1,        8, 0x076800ee
+0,        212,        213,        1,       24, 0x4ff8066b, F=0x0, S=1,        8, 0x076800ee
+0,        213,        214,        1,       24, 0x54b806ab, F=0x0, S=1,        8, 0x076800ee
+0,        214,        215,        1,       24, 0x597806eb, F=0x0, S=1,        8, 0x076800ee
+0,        215,        216,        1,       24, 0x4b4c062c, F=0x0, S=1,        8, 0x076800ee
+0,        216,        217,        1,       24, 0x500c066c, F=0x0, S=1,        8, 0x076800ee
+0,        217,        218,        1,       24, 0x54cc06ac, F=0x0, S=1,        8, 0x076800ee
+0,        218,        219,        1,       24, 0x598c06ec, F=0x0, S=1,        8, 0x076800ee
+0,        219,        220,        1,       24, 0x4b60062d, F=0x0, S=1,        8, 0x076800ee
+0,        220,        221,        1,       24, 0x5020066d, F=0x0, S=1,        8, 0x076800ee
+0,        221,        222,        1,       24, 0x54e006ad, F=0x0, S=1,        8, 0x076800ee
+0,        222,        223,        1,       24, 0x59a006ed, F=0x0, S=1,        8, 0x076800ee
+0,        223,        224,        1,       24, 0x4b74062e, F=0x0, S=1,        8, 0x076800ee
+0,        224,        225,        1,       24, 0x5034066e, F=0x0, S=1,        8, 0x076800ee
+0,        225,        226,        1,       24, 0x54f406ae, F=0x0, S=1,        8, 0x076800ee
+0,        226,        227,        1,       24, 0x59b406ee, F=0x0, S=1,        8, 0x076800ee
+0,        227,        228,        1,       24, 0x4b88062f, F=0x0, S=1,        8, 0x076800ee
+0,        228,        229,        1,       24, 0x5048066f, F=0x0, S=1,        8, 0x076800ee
+0,        229,        230,        1,       24, 0x550806af, F=0x0, S=1,        8, 0x076800ee
+0,        230,        231,        1,       24, 0x59c806ef, F=0x0, S=1,        8, 0x076800ee
+0,        231,        232,        1,       24, 0x4b9c0630, F=0x0, S=1,        8, 0x076800ee
+0,        232,        233,        1,       24, 0x505c0670, F=0x0, S=1,        8, 0x076800ee
+0,        233,        234,        1,       24, 0x551c06b0, F=0x0, S=1,        8, 0x076800ee
+0,        234,        235,        1,       24, 0x59dc06f0, F=0x0, S=1,        8, 0x076800ee
+0,        235,        236,        1,       24, 0x4bb00631, F=0x0, S=1,        8, 0x076800ee
+0,        236,        237,        1,       24, 0x50700671, F=0x0, S=1,        8, 0x076800ee
+0,        237,        238,        1,       24, 0x553006b1, F=0x0, S=1,        8, 0x076800ee
+0,        238,        239,        1,       24, 0x59f006f1, F=0x0, S=1,        8, 0x076800ee
+0,        239,        240,        1,       24, 0x4bc40632, F=0x0, S=1,        8, 0x076800ee
+0,        240,        241,        1,       24, 0x50840672, F=0x0, S=1,        8, 0x076800ee
+0,        241,        242,        1,       24, 0x554406b2, F=0x0, S=1,        8, 0x076800ee
+0,        242,        243,        1,       24, 0x5a0406f2, F=0x0, S=1,        8, 0x076800ee
+0,        243,        244,        1,       24, 0x4bd80633, F=0x0, S=1,        8, 0x076800ee
+0,        244,        245,        1,       24, 0x50980673, F=0x0, S=1,        8, 0x076800ee
+0,        245,        246,        1,       24, 0x555806b3, F=0x0, S=1,        8, 0x076800ee
+0,        246,        247,        1,       24, 0x5a1806f3, F=0x0, S=1,        8, 0x076800ee
+0,        247,        248,        1,       24, 0x4bec0634, F=0x0, S=1,        8, 0x076800ee
+0,        248,        249,        1,       24, 0x50ac0674, F=0x0, S=1,        8, 0x076800ee
+0,        249,        250,        1,       24, 0x556c06b4, F=0x0, S=1,        8, 0x076800ee
+0,        250,        251,        1,       24, 0x5a2c06f4, F=0x0, S=1,        8, 0x076800ee
+0,        251,        252,        1,       24, 0x4c000635, F=0x0, S=1,        8, 0x076800ee
+0,        252,        253,        1,       24, 0x50c00675, F=0x0, S=1,        8, 0x076800ee
+0,        253,        254,        1,       24, 0x558006b5, F=0x0, S=1,        8, 0x076800ee
+0,        254,        255,        1,       24, 0x5a4006f5, F=0x0, S=1,        8, 0x076800ee
+0,        255,        256,        1,       24, 0x4c140636, F=0x0, S=1,        8, 0x076800ee
+0,        256,        257,        1,       24, 0x50d40676, F=0x0, S=1,        8, 0x076800ee
+0,        257,        258,        1,       24, 0x559406b6, F=0x0, S=1,        8, 0x076800ee
+0,        258,        259,        1,       24, 0x5a5406f6, F=0x0, S=1,        8, 0x076800ee
+0,        259,        260,        1,       24, 0x4c280637, F=0x0, S=1,        8, 0x076800ee
+0,        260,        261,        1,       24, 0x50e80677, F=0x0, S=1,        8, 0x076800ee
+0,        261,        262,        1,       24, 0x55a806b7, F=0x0, S=1,        8, 0x076800ee
+0,        262,        263,        1,       24, 0x5a6806f7, F=0x0, S=1,        8, 0x076800ee
+0,        263,        264,        1,       24, 0x4c3c0638, F=0x0, S=1,        8, 0x076800ee
+0,        264,        265,        1,       24, 0x50fc0678, F=0x0, S=1,        8, 0x076800ee
+0,        265,        266,        1,       24, 0x55bc06b8, F=0x0, S=1,        8, 0x076800ee
+0,        266,        267,        1,       24, 0x5a7c06f8, F=0x0, S=1,        8, 0x076800ee
+0,        267,        268,        1,       24, 0x4c500639, F=0x0, S=1,        8, 0x076800ee
+0,        268,        269,        1,       24, 0x51100679, F=0x0, S=1,        8, 0x076800ee
+0,        269,        270,        1,       24, 0x55d006b9, F=0x0, S=1,        8, 0x076800ee
+0,        270,        271,        1,       24, 0x5a9006f9, F=0x0, S=1,        8, 0x076800ee
+0,        271,        272,        1,       24, 0x4c64063a, F=0x0, S=1,        8, 0x076800ee
+0,        272,        273,        1,       24, 0x5124067a, F=0x0, S=1,        8, 0x076800ee
+0,        273,        274,        1,       24, 0x55e406ba, F=0x0, S=1,        8, 0x076800ee
+0,        274,        275,        1,       24, 0x5aa406fa, F=0x0, S=1,        8, 0x076800ee
+0,        275,        276,        1,       24, 0x4c78063b, F=0x0, S=1,        8, 0x076800ee
+0,        276,        277,        1,       24, 0x5138067b, F=0x0, S=1,        8, 0x076800ee
+0,        277,        278,        1,       24, 0x55f806bb, F=0x0, S=1,        8, 0x076800ee
+0,        278,        279,        1,       24, 0x5ab806fb, F=0x0, S=1,        8, 0x076800ee
+0,        279,        280,        1,       24, 0x4c8c063c, F=0x0, S=1,        8, 0x076800ee
+0,        280,        281,        1,       24, 0x514c067c, F=0x0, S=1,        8, 0x076800ee
+0,        281,        282,        1,       24, 0x560c06bc, F=0x0, S=1,        8, 0x076800ee
+0,        282,        283,        1,       24, 0x5acc06fc, F=0x0, S=1,        8, 0x076800ee
+0,        283,        284,        1,       24, 0x4ca0063d, F=0x0, S=1,        8, 0x076800ee
+0,        284,        285,        1,       24, 0x5160067d, F=0x0, S=1,        8, 0x076800ee
+0,        285,        286,        1,       24, 0x562006bd, F=0x0, S=1,        8, 0x076800ee
+0,        286,        287,        1,       24, 0x5ae006fd, F=0x0, S=1,        8, 0x076800ee
+0,        287,        288,        1,       24, 0x4cb4063e, F=0x0, S=1,        8, 0x076800ee
+0,        288,        289,        1,       24, 0x5174067e, F=0x0, S=1,        8, 0x076800ee
+0,        289,        290,        1,       24, 0x563406be, F=0x0, S=1,        8, 0x076800ee
+0,        290,        291,        1,       24, 0x5af406fe, F=0x0, S=1,        8, 0x076800ee
+0,        291,        292,        1,       24, 0x4cc8063f, F=0x0, S=1,        8, 0x076800ee
+0,        292,        293,        1,       24, 0x5188067f, F=0x0, S=1,        8, 0x076800ee
+0,        293,        294,        1,       24, 0x564806bf, F=0x0, S=1,        8, 0x076800ee
+0,        294,        295,        1,       24, 0x5b0806ff, F=0x0, S=1,        8, 0x076800ee
+0,        295,        296,        1,       24, 0x4cdc0640, F=0x0, S=1,        8, 0x076800ee
+0,        296,        297,        1,       24, 0x519c0680, F=0x0, S=1,        8, 0x076800ee
+0,        297,        298,        1,       24, 0x565c06c0, F=0x0, S=1,        8, 0x076800ee
+0,        298,        299,        1,       24, 0x5b1c0700, F=0x0, S=1,        8, 0x076800ee
+0,        299,        300,        1,       24, 0x4cf00641, F=0x0, S=1,        8, 0x076800ee
+0,        300,        301,        1,       24, 0x51b00681, F=0x0, S=1,        8, 0x076800ee
+0,        301,        302,        1,       24, 0x567006c1, F=0x0, S=1,        8, 0x076800ee
+0,        302,        303,        1,       24, 0x5b300701, F=0x0, S=1,        8, 0x076800ee
+0,        303,        304,        1,       24, 0x4d040642, F=0x0, S=1,        8, 0x076800ee
+0,        304,        305,        1,       24, 0x51c40682, F=0x0, S=1,        8, 0x076800ee
+0,        305,        306,        1,       24, 0x568406c2, F=0x0, S=1,        8, 0x076800ee
+0,        306,        307,        1,       24, 0x5b440702, F=0x0, S=1,        8, 0x076800ee
+0,        307,        308,        1,       24, 0x4d180643, F=0x0, S=1,        8, 0x076800ee
+0,        308,        309,        1,       24, 0x51d80683, F=0x0, S=1,        8, 0x076800ee
+0,        309,        310,        1,       24, 0x569806c3, F=0x0, S=1,        8, 0x076800ee
+0,        310,        311,        1,       24, 0x5b580703, F=0x0, S=1,        8, 0x076800ee
+0,        311,        312,        1,       24, 0x4d2c0644, F=0x0, S=1,        8, 0x076800ee
+0,        312,        313,        1,       24, 0x51ec0684, F=0x0, S=1,        8, 0x076800ee
+0,        313,        314,        1,       24, 0x56ac06c4, F=0x0, S=1,        8, 0x076800ee
+0,        314,        315,        1,       24, 0x5b6c0704, F=0x0, S=1,        8, 0x076800ee
+0,        315,        316,        1,       24, 0x4d400645, F=0x0, S=1,        8, 0x076800ee
+0,        316,        317,        1,       24, 0x52000685, F=0x0, S=1,        8, 0x076800ee
+0,        317,        318,        1,       24, 0x56c006c5, F=0x0, S=1,        8, 0x076800ee
+0,        318,        319,        1,       24, 0x5b800705, F=0x0, S=1,        8, 0x076800ee
+0,        319,        320,        1,       24, 0x4d540646, F=0x0, S=1,        8, 0x076800ee
+0,        320,        321,        1,       24, 0x52140686, F=0x0, S=1,        8, 0x076800ee
+0,        321,        322,        1,       24, 0x56d406c6, F=0x0, S=1,        8, 0x076800ee
+0,        322,        323,        1,       24, 0x5b940706, F=0x0, S=1,        8, 0x076800ee
+0,        323,        324,        1,       24, 0x4d680647, F=0x0, S=1,        8, 0x076800ee
+0,        324,        325,        1,       24, 0x52280687, F=0x0, S=1,        8, 0x076800ee
+0,        325,        326,        1,       24, 0x56e806c7, F=0x0, S=1,        8, 0x076800ee
+0,        326,        327,        1,       24, 0x5ba80707, F=0x0, S=1,        8, 0x076800ee
+0,        327,        328,        1,       24, 0x4d7c0648, F=0x0, S=1,        8, 0x076800ee
+0,        328,        329,        1,       24, 0x523c0688, F=0x0, S=1,        8, 0x076800ee
+0,        329,        330,        1,       24, 0x56fc06c8, F=0x0, S=1,        8, 0x076800ee
+0,        330,        331,        1,       24, 0x5bbc0708, F=0x0, S=1,        8, 0x076800ee
+0,        331,        332,        1,       24, 0x4d900649, F=0x0, S=1,        8, 0x076800ee
+0,        332,        333,        1,       24, 0x52500689, F=0x0, S=1,        8, 0x076800ee
+0,        333,        334,        1,       24, 0x571006c9, F=0x0, S=1,        8, 0x076800ee
+0,        334,        335,        1,       24, 0x5bd00709, F=0x0, S=1,        8, 0x076800ee
+0,        335,        336,        1,       24, 0x4da4064a, F=0x0, S=1,        8, 0x076800ee
+0,        336,        337,        1,       24, 0x5264068a, F=0x0, S=1,        8, 0x076800ee
+0,        337,        338,        1,       24, 0x572406ca, F=0x0, S=1,        8, 0x076800ee
+0,        338,        339,        1,       24, 0x5be4070a, F=0x0, S=1,        8, 0x076800ee
+0,        339,        340,        1,       24, 0x4db8064b, F=0x0, S=1,        8, 0x076800ee
+0,        340,        341,        1,       24, 0x5278068b, F=0x0, S=1,        8, 0x076800ee
+0,        341,        342,        1,       24, 0x573806cb, F=0x0, S=1,        8, 0x076800ee
+0,        342,        343,        1,       24, 0x5bf8070b, F=0x0, S=1,        8, 0x076800ee
+0,        343,        344,        1,       24, 0x4dcc064c, F=0x0, S=1,        8, 0x076800ee
+0,        344,        345,        1,       24, 0x528c068c, F=0x0, S=1,        8, 0x076800ee
+0,        345,        346,        1,       24, 0x574c06cc, F=0x0, S=1,        8, 0x076800ee
+0,        346,        347,        1,       24, 0x5c0c070c, F=0x0, S=1,        8, 0x076800ee
+0,        347,        348,        1,       24, 0x4de0064d, F=0x0, S=1,        8, 0x076800ee
+0,        348,        349,        1,       24, 0x52a0068d, F=0x0, S=1,        8, 0x076800ee
+0,        349,        350,        1,       24, 0x576006cd, F=0x0, S=1,        8, 0x076800ee
+0,        350,        351,        1,       24, 0x5c20070d, F=0x0, S=1,        8, 0x076800ee
+0,        351,        352,        1,       24, 0x4df4064e, F=0x0, S=1,        8, 0x076800ee
+0,        352,        353,        1,       24, 0x52b4068e, F=0x0, S=1,        8, 0x076800ee
+0,        353,        354,        1,       24, 0x577406ce, F=0x0, S=1,        8, 0x076800ee
+0,        354,        355,        1,       24, 0x5c34070e, F=0x0, S=1,        8, 0x076800ee
+0,        355,        356,        1,       24, 0x4e08064f, F=0x0, S=1,        8, 0x076800ee
+0,        356,        357,        1,       24, 0x52c8068f, F=0x0, S=1,        8, 0x076800ee
+0,        357,        358,        1,       24, 0x578806cf, F=0x0, S=1,        8, 0x076800ee
+0,        358,        359,        1,       24, 0x5c48070f, F=0x0, S=1,        8, 0x076800ee
+0,        359,        360,        1,       24, 0x4e1c0650, F=0x0, S=1,        8, 0x076800ee
+0,        360,        361,        1,       24, 0x52dc0690, F=0x0, S=1,        8, 0x076800ee
+0,        361,        362,        1,       24, 0x579c06d0, F=0x0, S=1,        8, 0x076800ee
+0,        362,        363,        1,       24, 0x5c5c0710, F=0x0, S=1,        8, 0x076800ee
+0,        363,        364,        1,       24, 0x4e300651, F=0x0, S=1,        8, 0x076800ee
+0,        364,        365,        1,       24, 0x52f00691, F=0x0, S=1,        8, 0x076800ee
+0,        365,        366,        1,       24, 0x57b006d1, F=0x0, S=1,        8, 0x076800ee
+0,        366,        367,        1,       24, 0x5c700711, F=0x0, S=1,        8, 0x076800ee
+0,        367,        368,        1,       24, 0x4e440652, F=0x0, S=1,        8, 0x076800ee
+0,        368,        369,        1,       24, 0x53040692, F=0x0, S=1,        8, 0x076800ee
+0,        369,        370,        1,       24, 0x57c406d2, F=0x0, S=1,        8, 0x076800ee
+0,        370,        371,        1,       24, 0x5c840712, F=0x0, S=1,        8, 0x076800ee
+0,        371,        372,        1,       24, 0x4e580653, F=0x0, S=1,        8, 0x076800ee
+0,        372,        373,        1,       24, 0x53180693, F=0x0, S=1,        8, 0x076800ee
+0,        373,        374,        1,       24, 0x57d806d3, F=0x0, S=1,        8, 0x076800ee
+0,        374,        375,        1,       24, 0x5c980713, F=0x0, S=1,        8, 0x076800ee
+0,        375,        376,        1,       24, 0x4e6c0654, F=0x0, S=1,        8, 0x076800ee
+0,        376,        377,        1,       24, 0x532c0694, F=0x0, S=1,        8, 0x076800ee
+0,        377,        378,        1,       24, 0x57ec06d4, F=0x0, S=1,        8, 0x076800ee
+0,        378,        379,        1,       24, 0x5cac0714, F=0x0, S=1,        8, 0x076800ee
+0,        379,        380,        1,       24, 0x4e800655, F=0x0, S=1,        8, 0x076800ee
+0,        380,        381,        1,       24, 0x53400695, F=0x0, S=1,        8, 0x076800ee
+0,        381,        382,        1,       24, 0x580006d5, F=0x0, S=1,        8, 0x076800ee
+0,        382,        383,        1,       24, 0x5cc00715, F=0x0, S=1,        8, 0x076800ee
+0,        383,        384,        1,       24, 0x4e940656, F=0x0, S=1,        8, 0x076800ee
+0,        384,        385,        1,       24, 0x53540696, F=0x0, S=1,        8, 0x076800ee
+0,        385,        386,        1,       24, 0x581406d6, F=0x0, S=1,        8, 0x076800ee
+0,        386,        387,        1,       24, 0x5cd40716, F=0x0, S=1,        8, 0x076800ee
+0,        387,        388,        1,       24, 0x4ea80657, F=0x0, S=1,        8, 0x076800ee
+0,        388,        389,        1,       24, 0x53680697, F=0x0, S=1,        8, 0x076800ee
+0,        389,        390,        1,       24, 0x582806d7, F=0x0, S=1,        8, 0x076800ee
+0,        390,        391,        1,       24, 0x5ce80717, F=0x0, S=1,        8, 0x076800ee
+0,        391,        392,        1,       24, 0x4ebc0658, F=0x0, S=1,        8, 0x076800ee
+0,        392,        393,        1,       24, 0x537c0698, F=0x0, S=1,        8, 0x076800ee
+0,        393,        394,        1,       24, 0x583c06d8, F=0x0, S=1,        8, 0x076800ee
+0,        394,        395,        1,       24, 0x5cfc0718, F=0x0, S=1,        8, 0x076800ee
+0,        395,        396,        1,       24, 0x4ed00659, F=0x0, S=1,        8, 0x076800ee
+0,        396,        397,        1,       24, 0x53900699, F=0x0, S=1,        8, 0x076800ee
+0,        397,        398,        1,       24, 0x585006d9, F=0x0, S=1,        8, 0x076800ee
+0,        398,        399,        1,       24, 0x5d100719, F=0x0, S=1,        8, 0x076800ee
+0,        399,        400,        1,       24, 0x4ee4065a, F=0x0, S=1,        8, 0x076800ee
+0,        400,        401,        1,       24, 0x53a4069a, F=0x0, S=1,        8, 0x076800ee
+0,        401,        402,        1,       24, 0x586406da, F=0x0, S=1,        8, 0x076800ee
+0,        402,        403,        1,       24, 0x5d24071a, F=0x0, S=1,        8, 0x076800ee
+0,        403,        404,        1,       24, 0x4ef8065b, F=0x0, S=1,        8, 0x076800ee
+0,        404,        405,        1,       24, 0x53b8069b, F=0x0, S=1,        8, 0x076800ee
+0,        405,        406,        1,       24, 0x587806db, F=0x0, S=1,        8, 0x076800ee
+0,        406,        407,        1,       24, 0x5d38071b, F=0x0, S=1,        8, 0x076800ee
+0,        407,        408,        1,       24, 0x4f0c065c, F=0x0, S=1,        8, 0x076800ee
+0,        408,        409,        1,       24, 0x53cc069c, F=0x0, S=1,        8, 0x076800ee
+0,        409,        410,        1,       24, 0x588c06dc, F=0x0, S=1,        8, 0x076800ee
+0,        410,        411,        1,       24, 0x5d4c071c, F=0x0, S=1,        8, 0x076800ee
+0,        411,        412,        1,       24, 0x4f20065d, F=0x0, S=1,        8, 0x076800ee
+0,        412,        413,        1,       24, 0x53e0069d, F=0x0, S=1,        8, 0x076800ee
+0,        413,        414,        1,       24, 0x58a006dd, F=0x0, S=1,        8, 0x076800ee
+0,        414,        415,        1,       24, 0x5d60071d, F=0x0, S=1,        8, 0x076800ee
+0,        415,        416,        1,       24, 0x4f34065e, F=0x0, S=1,        8, 0x076800ee
+0,        416,        417,        1,       24, 0x53f4069e, F=0x0, S=1,        8, 0x076800ee
+0,        417,        418,        1,       24, 0x58b406de, F=0x0, S=1,        8, 0x076800ee
+0,        418,        419,        1,       24, 0x5d74071e, F=0x0, S=1,        8, 0x076800ee
+0,        419,        420,        1,       24, 0x4f48065f, F=0x0, S=1,        8, 0x076800ee
+0,        420,        421,        1,       24, 0x5408069f, F=0x0, S=1,        8, 0x076800ee
+0,        421,        422,        1,       24, 0x58c806df, F=0x0, S=1,        8, 0x076800ee
+0,        422,        423,        1,       24, 0x5d88071f, F=0x0, S=1,        8, 0x076800ee
+0,        423,        424,        1,       24, 0x4f5c0660, F=0x0, S=1,        8, 0x076800ee
+0,        424,        425,        1,       24, 0x541c06a0, F=0x0, S=1,        8, 0x076800ee
+0,        425,        426,        1,       24, 0x58dc06e0, F=0x0, S=1,        8, 0x076800ee
+0,        426,        427,        1,       24, 0x5d9c0720, F=0x0, S=1,        8, 0x076800ee
+0,        427,        428,        1,       24, 0x4f700661, F=0x0, S=1,        8, 0x076800ee
+0,        428,        429,        1,       24, 0x543006a1, F=0x0, S=1,        8, 0x076800ee
+0,        429,        430,        1,       24, 0x58f006e1, F=0x0, S=1,        8, 0x076800ee
+0,        430,        431,        1,       24, 0x5db00721, F=0x0, S=1,        8, 0x076800ee
+0,        431,        432,        1,       24, 0x4f840662, F=0x0, S=1,        8, 0x076800ee
+0,        432,        433,        1,       24, 0x544406a2, F=0x0, S=1,        8, 0x076800ee
+0,        433,        434,        1,       24, 0x590406e2, F=0x0, S=1,        8, 0x076800ee
+0,        434,        435,        1,       24, 0x5dc40722, F=0x0, S=1,        8, 0x076800ee
+0,        435,        436,        1,       24, 0x4f980663, F=0x0, S=1,        8, 0x076800ee
+0,        436,        437,        1,       24, 0x545806a3, F=0x0, S=1,        8, 0x076800ee
+0,        437,        438,        1,       24, 0x591806e3, F=0x0, S=1,        8, 0x076800ee
+0,        438,        439,        1,       24, 0x5dd80723, F=0x0, S=1,        8, 0x076800ee
+0,        439,        440,        1,       24, 0x4fac0664, F=0x0, S=1,        8, 0x076800ee
+0,        440,        441,        1,       24, 0x546c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        441,        442,        1,       24, 0x592c06e4, F=0x0, S=1,        8, 0x076800ee
+0,        442,        443,        1,       24, 0x5dec0724, F=0x0, S=1,        8, 0x076800ee
+0,        443,        444,        1,       24, 0x4fc00665, F=0x0, S=1,        8, 0x076800ee
+0,        444,        445,        1,       24, 0x548006a5, F=0x0, S=1,        8, 0x076800ee
+0,        445,        446,        1,       24, 0x594006e5, F=0x0, S=1,        8, 0x076800ee
+0,        446,        447,        1,       24, 0x5e000725, F=0x0, S=1,        8, 0x076800ee
+0,        447,        448,        1,       24, 0x4fd40666, F=0x0, S=1,        8, 0x076800ee
+0,        448,        449,        1,       24, 0x549406a6, F=0x0, S=1,        8, 0x076800ee
+0,        449,        450,        1,       24, 0x595406e6, F=0x0, S=1,        8, 0x076800ee
+0,        450,        451,        1,       24, 0x5e140726, F=0x0, S=1,        8, 0x076800ee
+0,        451,        452,        1,       24, 0x4fe80667, F=0x0, S=1,        8, 0x076800ee
+0,        452,        453,        1,       24, 0x54a806a7, F=0x0, S=1,        8, 0x076800ee
+0,        453,        454,        1,       24, 0x596806e7, F=0x0, S=1,        8, 0x076800ee
+0,        454,        455,        1,       24, 0x5e280727, F=0x0, S=1,        8, 0x076800ee
+0,        455,        456,        1,       24, 0x4ffc0668, F=0x0, S=1,        8, 0x076800ee
+0,        456,        457,        1,       24, 0x54bc06a8, F=0x0, S=1,        8, 0x076800ee
+0,        457,        458,        1,       24, 0x597c06e8, F=0x0, S=1,        8, 0x076800ee
+0,        458,        459,        1,       24, 0x5e3c0728, F=0x0, S=1,        8, 0x076800ee
+0,        459,        460,        1,       24, 0x50100669, F=0x0, S=1,        8, 0x076800ee
+0,        460,        461,        1,       24, 0x54d006a9, F=0x0, S=1,        8, 0x076800ee
+0,        461,        462,        1,       24, 0x599006e9, F=0x0, S=1,        8, 0x076800ee
+0,        462,        463,        1,       24, 0x5e500729, F=0x0, S=1,        8, 0x076800ee
+0,        463,        464,        1,       24, 0x5024066a, F=0x0, S=1,        8, 0x076800ee
+0,        464,        465,        1,       24, 0x54e406aa, F=0x0, S=1,        8, 0x076800ee
+0,        465,        466,        1,       24, 0x59a406ea, F=0x0, S=1,        8, 0x076800ee
+0,        466,        467,        1,       24, 0x5e64072a, F=0x0, S=1,        8, 0x076800ee
+0,        467,        468,        1,       24, 0x5038066b, F=0x0, S=1,        8, 0x076800ee
+0,        468,        469,        1,       24, 0x54f806ab, F=0x0, S=1,        8, 0x076800ee
+0,        469,        470,        1,       24, 0x59b806eb, F=0x0, S=1,        8, 0x076800ee
+0,        470,        471,        1,       24, 0x5e78072b, F=0x0, S=1,        8, 0x076800ee
+0,        471,        472,        1,       24, 0x504c066c, F=0x0, S=1,        8, 0x076800ee
+0,        472,        473,        1,       24, 0x550c06ac, F=0x0, S=1,        8, 0x076800ee
+0,        473,        474,        1,       24, 0x59cc06ec, F=0x0, S=1,        8, 0x076800ee
+0,        474,        475,        1,       24, 0x5e8c072c, F=0x0, S=1,        8, 0x076800ee
+0,        475,        476,        1,       24, 0x5060066d, F=0x0, S=1,        8, 0x076800ee
+0,        476,        477,        1,       24, 0x552006ad, F=0x0, S=1,        8, 0x076800ee
+0,        477,        478,        1,       24, 0x59e006ed, F=0x0, S=1,        8, 0x076800ee
+0,        478,        479,        1,       24, 0x5ea0072d, F=0x0, S=1,        8, 0x076800ee
+0,        479,        480,        1,       24, 0x5074066e, F=0x0, S=1,        8, 0x076800ee
+0,        480,        481,        1,       24, 0x553406ae, F=0x0, S=1,        8, 0x076800ee
+0,        481,        482,        1,       24, 0x59f406ee, F=0x0, S=1,        8, 0x076800ee
+0,        482,        483,        1,       24, 0x5eb4072e, F=0x0, S=1,        8, 0x076800ee
+0,        483,        484,        1,       24, 0x5088066f, F=0x0, S=1,        8, 0x076800ee
+0,        484,        485,        1,       24, 0x554806af, F=0x0, S=1,        8, 0x076800ee
+0,        485,        486,        1,       24, 0x5a0806ef, F=0x0, S=1,        8, 0x076800ee
+0,        486,        487,        1,       24, 0x5ec8072f, F=0x0, S=1,        8, 0x076800ee
+0,        487,        488,        1,       24, 0x509c0670, F=0x0, S=1,        8, 0x076800ee
+0,        488,        489,        1,       24, 0x555c06b0, F=0x0, S=1,        8, 0x076800ee
+0,        489,        490,        1,       24, 0x5a1c06f0, F=0x0, S=1,        8, 0x076800ee
+0,        490,        491,        1,       24, 0x5edc0730, F=0x0, S=1,        8, 0x076800ee
+0,        491,        492,        1,       24, 0x50b00671, F=0x0, S=1,        8, 0x076800ee
+0,        492,        493,        1,       24, 0x557006b1, F=0x0, S=1,        8, 0x076800ee
+0,        493,        494,        1,       24, 0x5a3006f1, F=0x0, S=1,        8, 0x076800ee
+0,        494,        495,        1,       24, 0x5ef00731, F=0x0, S=1,        8, 0x076800ee
+0,        495,        496,        1,       24, 0x50c40672, F=0x0, S=1,        8, 0x076800ee
+0,        496,        497,        1,       24, 0x558406b2, F=0x0, S=1,        8, 0x076800ee
+0,        497,        498,        1,       24, 0x5a4406f2, F=0x0, S=1,        8, 0x076800ee
+0,        498,        499,        1,       24, 0x5f040732, F=0x0, S=1,        8, 0x076800ee
+0,        499,        500,        1,       24, 0x50d80673, F=0x0, S=1,        8, 0x076800ee
+0,        500,        501,        1,       24, 0x559806b3, F=0x0, S=1,        8, 0x076800ee
+0,        501,        502,        1,       24, 0x5a5806f3, F=0x0, S=1,        8, 0x076800ee
+0,        502,        503,        1,       24, 0x5f180733, F=0x0, S=1,        8, 0x076800ee
+0,        503,        504,        1,       24, 0x50ec0674, F=0x0, S=1,        8, 0x076800ee
+0,        504,        505,        1,       24, 0x55ac06b4, F=0x0, S=1,        8, 0x076800ee
+0,        505,        506,        1,       24, 0x5a6c06f4, F=0x0, S=1,        8, 0x076800ee
+0,        506,        507,        1,       24, 0x5f2c0734, F=0x0, S=1,        8, 0x076800ee
+0,        507,        508,        1,       24, 0x51000675, F=0x0, S=1,        8, 0x076800ee
+0,        508,        509,        1,       24, 0x55c006b5, F=0x0, S=1,        8, 0x076800ee
+0,        509,        510,        1,       24, 0x5a8006f5, F=0x0, S=1,        8, 0x076800ee
+0,        510,        511,        1,       24, 0x5f400735, F=0x0, S=1,        8, 0x076800ee
+0,        511,        512,        1,       24, 0x51140676, F=0x0, S=1,        8, 0x076800ee
+0,        512,        513,        1,       24, 0x55d406b6, F=0x0, S=1,        8, 0x076800ee
+0,        513,        514,        1,       24, 0x5a9406f6, F=0x0, S=1,        8, 0x076800ee
+0,        514,        515,        1,       24, 0x5f540736, F=0x0, S=1,        8, 0x076800ee
+0,        515,        516,        1,       24, 0x51280677, F=0x0, S=1,        8, 0x076800ee
+0,        516,        517,        1,       24, 0x55e806b7, F=0x0, S=1,        8, 0x076800ee
+0,        517,        518,        1,       24, 0x5aa806f7, F=0x0, S=1,        8, 0x076800ee
+0,        518,        519,        1,       24, 0x5f680737, F=0x0, S=1,        8, 0x076800ee
+0,        519,        520,        1,       24, 0x513c0678, F=0x0, S=1,        8, 0x076800ee
+0,        520,        521,        1,       24, 0x55fc06b8, F=0x0, S=1,        8, 0x076800ee
+0,        521,        522,        1,       24, 0x5abc06f8, F=0x0, S=1,        8, 0x076800ee
+0,        522,        523,        1,       24, 0x5f7c0738, F=0x0, S=1,        8, 0x076800ee
+0,        523,        524,        1,       24, 0x51500679, F=0x0, S=1,        8, 0x076800ee
+0,        524,        525,        1,       24, 0x561006b9, F=0x0, S=1,        8, 0x076800ee
+0,        525,        526,        1,       57, 0x896e0f04, S=1,        8, 0x05ec00be
+0,        526,        527,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,        527,        528,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,        528,        529,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,        529,        530,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,        530,        531,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,        531,        532,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,        532,        533,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,        533,        534,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,        534,        535,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,        535,        536,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,        536,        537,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,        537,        538,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,        538,        539,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,        539,        540,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,        540,        541,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,        541,        542,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,        542,        543,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,        543,        544,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        544,        545,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,        545,        546,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,        546,        547,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,        547,        548,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,        548,        549,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,        549,        550,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,        550,        551,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,        551,        552,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,        552,        553,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,        553,        554,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,        554,        555,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,        555,        556,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,        556,        557,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,        557,        558,        1,       24, 0x4afc0628, F=0x0, S=1,        8, 0x076800ee
+0,        558,        559,        1,       24, 0x4fbc0668, F=0x0, S=1,        8, 0x076800ee
+0,        559,        560,        1,       24, 0x547c06a8, F=0x0, S=1,        8, 0x076800ee
+0,        560,        561,        1,       24, 0x593c06e8, F=0x0, S=1,        8, 0x076800ee
+0,        561,        562,        1,       24, 0x4b100629, F=0x0, S=1,        8, 0x076800ee
+0,        562,        563,        1,       24, 0x4fd00669, F=0x0, S=1,        8, 0x076800ee
+0,        563,        564,        1,       24, 0x549006a9, F=0x0, S=1,        8, 0x076800ee
+0,        564,        565,        1,       24, 0x595006e9, F=0x0, S=1,        8, 0x076800ee
+0,        565,        566,        1,       24, 0x4b24062a, F=0x0, S=1,        8, 0x076800ee
+0,        566,        567,        1,       24, 0x4fe4066a, F=0x0, S=1,        8, 0x076800ee
+0,        567,        568,        1,       24, 0x54a406aa, F=0x0, S=1,        8, 0x076800ee
+0,        568,        569,        1,       24, 0x596406ea, F=0x0, S=1,        8, 0x076800ee
+0,        569,        570,        1,       24, 0x4b38062b, F=0x0, S=1,        8, 0x076800ee
+0,        570,        571,        1,       24, 0x4ff8066b, F=0x0, S=1,        8, 0x076800ee
+0,        571,        572,        1,       24, 0x54b806ab, F=0x0, S=1,        8, 0x076800ee
+0,        572,        573,        1,       24, 0x597806eb, F=0x0, S=1,        8, 0x076800ee
+0,        573,        574,        1,       24, 0x4b4c062c, F=0x0, S=1,        8, 0x076800ee
+0,        574,        575,        1,       24, 0x500c066c, F=0x0, S=1,        8, 0x076800ee
+0,        575,        576,        1,       57, 0x901d0f3f, S=1,        8, 0x05ec00be
+0,        576,        577,        1,       24, 0x4f1c0660, F=0x0, S=1,        8, 0x076800ee
+0,        577,        578,        1,       24, 0x53dc06a0, F=0x0, S=1,        8, 0x076800ee
+0,        578,        579,        1,       24, 0x589c06e0, F=0x0, S=1,        8, 0x076800ee
+0,        579,        580,        1,       24, 0x4a700621, F=0x0, S=1,        8, 0x076800ee
+0,        580,        581,        1,       24, 0x4f300661, F=0x0, S=1,        8, 0x076800ee
+0,        581,        582,        1,       24, 0x53f006a1, F=0x0, S=1,        8, 0x076800ee
+0,        582,        583,        1,       24, 0x58b006e1, F=0x0, S=1,        8, 0x076800ee
+0,        583,        584,        1,       24, 0x4a840622, F=0x0, S=1,        8, 0x076800ee
+0,        584,        585,        1,       24, 0x4f440662, F=0x0, S=1,        8, 0x076800ee
+0,        585,        586,        1,       24, 0x540406a2, F=0x0, S=1,        8, 0x076800ee
+0,        586,        587,        1,       24, 0x58c406e2, F=0x0, S=1,        8, 0x076800ee
+0,        587,        588,        1,       24, 0x4a980623, F=0x0, S=1,        8, 0x076800ee
+0,        588,        589,        1,       24, 0x4f580663, F=0x0, S=1,        8, 0x076800ee
+0,        589,        590,        1,       24, 0x541806a3, F=0x0, S=1,        8, 0x076800ee
+0,        590,        591,        1,       24, 0x58d806e3, F=0x0, S=1,        8, 0x076800ee
+0,        591,        592,        1,       24, 0x4aac0624, F=0x0, S=1,        8, 0x076800ee
+0,        592,        593,        1,       24, 0x4f6c0664, F=0x0, S=1,        8, 0x076800ee
+0,        593,        594,        1,       24, 0x542c06a4, F=0x0, S=1,        8, 0x076800ee
+0,        594,        595,        1,       24, 0x58ec06e4, F=0x0, S=1,        8, 0x076800ee
+0,        595,        596,        1,       24, 0x4ac00625, F=0x0, S=1,        8, 0x076800ee
+0,        596,        597,        1,       24, 0x4f800665, F=0x0, S=1,        8, 0x076800ee
+0,        597,        598,        1,       24, 0x544006a5, F=0x0, S=1,        8, 0x076800ee
+0,        598,        599,        1,       24, 0x590006e5, F=0x0, S=1,        8, 0x076800ee
+0,        599,        600,        1,       24, 0x4ad40626, F=0x0, S=1,        8, 0x076800ee
+0,        600,        601,        1,       24, 0x4f940666, F=0x0, S=1,        8, 0x076800ee
+0,        601,        602,        1,       24, 0x545406a6, F=0x0, S=1,        8, 0x076800ee
+0,        602,        603,        1,       24, 0x591406e6, F=0x0, S=1,        8, 0x076800ee
+0,        603,        604,        1,       24, 0x4ae80627, F=0x0, S=1,        8, 0x076800ee
+0,        604,        605,        1,       24, 0x4fa80667, F=0x0, S=1,        8, 0x076800ee
+0,        605,        606,        1,       24, 0x546806a7, F=0x0, S=1,        8, 0x076800ee
+0,        606,        607,        1,       24, 0x592806e7, F=0x0, S=1,        8, 0x076800ee
+0,        607,        608,        1,       24, 0x4afc0628, F=0x0, S=1,        8, 0x076800ee
+0,        608,        609,        1,       24, 0x4fbc0668, F=0x0, S=1,        8, 0x076800ee
+0,        609,        610,        1,       24, 0x547c06a8, F=0x0, S=1,        8, 0x076800ee
+0,        610,        611,        1,       24, 0x593c06e8, F=0x0, S=1,        8, 0x076800ee
diff --git a/tests/ref/fate/gapless-mp3 b/tests/ref/fate/gapless-mp3
index 578db55534e..c81168ecea2 100644
--- a/tests/ref/fate/gapless-mp3
+++ b/tests/ref/fate/gapless-mp3
@@ -1,5 +1,5 @@ 
-d7e884aea266b63f1547f1ad10188c08 *tests/data/fate/gapless-mp3.out-1
+f019ded6e72b62993b8c12af7ca2a7b9 *tests/data/fate/gapless-mp3.out-1
 c96c3ae7bd3300fd2f4debac222de5b7
-75bc539914297a191f40af2d737d7380 *tests/data/fate/gapless-mp3.out-2
+a7c7a5d3fd88f50e61377a6cd4adcc1f *tests/data/fate/gapless-mp3.out-2
 c96c3ae7bd3300fd2f4debac222de5b7
-ab21e0bd0c2d84426153d4cde919a1e3 *tests/data/fate/gapless-mp3.out-3
+1bc7462e7ebaaf54fc5123414fd0fd74 *tests/data/fate/gapless-mp3.out-3
diff --git a/tests/ref/fate/h264_redundant_pps-side_data b/tests/ref/fate/h264_redundant_pps-side_data
index c1c00eebaec..373312222bd 100644
--- a/tests/ref/fate/h264_redundant_pps-side_data
+++ b/tests/ref/fate/h264_redundant_pps-side_data
@@ -6,7 +6,7 @@  a35cca13c3f91d1a279bf576b8264d05 *tests/data/fate/h264_redundant_pps-side_data.n
 #codec_id 0: h264
 #dimensions 0: 1920x1080
 #sar 0: 0/1
-0,      -2002,          0,     2002,   247959, 0xdb721881, S=1,       34
+0,      -2002,          0,     2002,   247959, 0xdb721881, S=1,       34, 0x850408e3
 0,          0,       4004,     2002,    43356, 0xa366eb79, F=0x0
 0,       2002,       2002,     2002,    11423, 0x9c0a86fa, F=0x0
 0,       4004,       8008,     2002,    50801, 0xfbfe860d, F=0x0
diff --git a/tests/ref/fate/iamf-5_1-copy b/tests/ref/fate/iamf-5_1-copy
index 1f0b67b1f74..4bf9bdf3ffa 100644
--- a/tests/ref/fate/iamf-5_1-copy
+++ b/tests/ref/fate/iamf-5_1-copy
@@ -22,110 +22,110 @@ 
 #codec_id 3: opus
 #sample_rate 3: 48000
 #channel_layout_name 3: mono
-0,          0,          0,      960,      371, 0x552eba36, S=3,       10,       96,      136
-1,          0,          0,      960,      381, 0x6779b329, S=3,       10,       96,      136
-2,          0,          0,      960,       66, 0x4ce02142, S=3,       10,       96,      136
-3,          0,          0,      960,       67, 0x935223f9, S=3,       10,       96,      136
-0,        960,        960,      960,      313, 0xa5e19a4f, S=2,       96,      136
-1,        960,        960,      960,      339, 0xf83daf6a, S=2,       96,      136
-2,        960,        960,      960,       62, 0x80c91ca8, S=2,       96,      136
-3,        960,        960,      960,       64, 0xaae41dd7, S=2,       96,      136
-0,       1920,       1920,      960,      210, 0x5fc26f7a, S=2,       96,      136
-1,       1920,       1920,      960,      207, 0xc8c768e8, S=2,       96,      136
-2,       1920,       1920,      960,       75, 0x85012598, S=2,       96,      136
-3,       1920,       1920,      960,       94, 0x5dc52d3b, S=2,       96,      136
-0,       2880,       2880,      960,      211, 0x8f006c62, S=2,       96,      136
-1,       2880,       2880,      960,      215, 0x30c8674d, S=2,       96,      136
-2,       2880,       2880,      960,       88, 0x46772b87, S=2,       96,      136
-3,       2880,       2880,      960,      105, 0x831c3191, S=2,       96,      136
-0,       3840,       3840,      960,      340, 0x3c92a527, S=2,       96,      136
-1,       3840,       3840,      960,      303, 0x65e09e91, S=2,       96,      136
-2,       3840,       3840,      960,      121, 0xc45d3ec1, S=2,       96,      136
-3,       3840,       3840,      960,      126, 0xff3a44d7, S=2,       96,      136
-0,       4800,       4800,      960,      206, 0x3087662a, S=2,       96,      136
-1,       4800,       4800,      960,      206, 0xd2b469de, S=2,       96,      136
-2,       4800,       4800,      960,      124, 0xd9423baf, S=2,       96,      136
-3,       4800,       4800,      960,      121, 0x24073ab0, S=2,       96,      136
-0,       5760,       5760,      960,      212, 0x85686b01, S=2,       96,      136
-1,       5760,       5760,      960,      230, 0x7ce56f22, S=2,       96,      136
-2,       5760,       5760,      960,      128, 0xca6840ad, S=2,       96,      136
-3,       5760,       5760,      960,      138, 0xa1f24207, S=2,       96,      136
-0,       6720,       6720,      960,      220, 0xd40572ca, S=2,       96,      136
-1,       6720,       6720,      960,      223, 0x760c74ce, S=2,       96,      136
-2,       6720,       6720,      960,      125, 0xd0674094, S=2,       96,      136
-3,       6720,       6720,      960,      130, 0x58f64293, S=2,       96,      136
-0,       7680,       7680,      960,      249, 0x9b6c77bb, S=2,       96,      136
-1,       7680,       7680,      960,      247, 0x660475b6, S=2,       96,      136
-2,       7680,       7680,      960,      125, 0x43de3911, S=2,       96,      136
-3,       7680,       7680,      960,      122, 0x0d4137b3, S=2,       96,      136
-0,       8640,       8640,      960,      262, 0x0d718316, S=2,       96,      136
-1,       8640,       8640,      960,      260, 0xce698563, S=2,       96,      136
-2,       8640,       8640,      960,      121, 0x7f1b4025, S=2,       96,      136
-3,       8640,       8640,      960,      121, 0xdae34205, S=2,       96,      136
-0,       9600,       9600,      960,      266, 0x6ffb86f0, S=2,       96,      136
-1,       9600,       9600,      960,      266, 0xa16f87bb, S=2,       96,      136
-2,       9600,       9600,      960,      119, 0x57703c74, S=2,       96,      136
-3,       9600,       9600,      960,      114, 0x06853bf5, S=2,       96,      136
-0,      10560,      10560,      960,      269, 0x43078081, S=2,       96,      136
-1,      10560,      10560,      960,      255, 0xff767870, S=2,       96,      136
-2,      10560,      10560,      960,      117, 0x86a43b70, S=2,       96,      136
-3,      10560,      10560,      960,      114, 0x4be5388e, S=2,       96,      136
-0,      11520,      11520,      960,      244, 0xd56f7885, S=2,       96,      136
-1,      11520,      11520,      960,      241, 0xbd1777f2, S=2,       96,      136
-2,      11520,      11520,      960,      110, 0xce96366a, S=2,       96,      136
-3,      11520,      11520,      960,      109, 0x120234bd, S=2,       96,      136
-0,      12480,      12480,      960,      241, 0xb8847e12, S=2,       96,      136
-1,      12480,      12480,      960,      241, 0x1bd27430, S=2,       96,      136
-2,      12480,      12480,      960,      127, 0x38ce3ff0, S=2,       96,      136
-3,      12480,      12480,      960,      127, 0x9f763c9b, S=2,       96,      136
-0,      13440,      13440,      960,      241, 0x9ee4787e, S=2,       96,      136
-1,      13440,      13440,      960,      241, 0x85ad821d, S=2,       96,      136
-2,      13440,      13440,      960,      141, 0xdc414884, S=2,       96,      136
-3,      13440,      13440,      960,      134, 0x95c9405e, S=2,       96,      136
-0,      14400,      14400,      960,      241, 0x060c78e3, S=2,       96,      136
-1,      14400,      14400,      960,      241, 0x03bb7e7e, S=2,       96,      136
-2,      14400,      14400,      960,      133, 0xfe184321, S=2,       96,      136
-3,      14400,      14400,      960,      125, 0x70523d7d, S=2,       96,      136
-0,      15360,      15360,      960,      241, 0xf7c57f6b, S=2,       96,      136
-1,      15360,      15360,      960,      241, 0x58ed7656, S=2,       96,      136
-2,      15360,      15360,      960,      119, 0x33b83af3, S=2,       96,      136
-3,      15360,      15360,      960,      121, 0x3f353eb3, S=2,       96,      136
-0,      16320,      16320,      960,      241, 0xc0077948, S=2,       96,      136
-1,      16320,      16320,      960,      241, 0x886a7f2a, S=2,       96,      136
-2,      16320,      16320,      960,      118, 0x122d3d16, S=2,       96,      136
-3,      16320,      16320,      960,      123, 0x673d3bbd, S=2,       96,      136
-0,      17280,      17280,      960,      241, 0x51777d39, S=2,       96,      136
-1,      17280,      17280,      960,      241, 0x25aa7240, S=2,       96,      136
-2,      17280,      17280,      960,      116, 0xe4ff3d75, S=2,       96,      136
-3,      17280,      17280,      960,      114, 0x95c638df, S=2,       96,      136
-0,      18240,      18240,      960,      241, 0x8a038527, S=2,       96,      136
-1,      18240,      18240,      960,      241, 0x151877bf, S=2,       96,      136
-2,      18240,      18240,      960,      116, 0xcb0238e6, S=2,       96,      136
-3,      18240,      18240,      960,      122, 0xc1fb4201, S=2,       96,      136
-0,      19200,      19200,      960,      241, 0xff1a839d, S=2,       96,      136
-1,      19200,      19200,      960,      241, 0x243c7927, S=2,       96,      136
-2,      19200,      19200,      960,      117, 0x4b723619, S=2,       96,      136
-3,      19200,      19200,      960,      113, 0xccf439e2, S=2,       96,      136
-0,      20160,      20160,      960,      241, 0x9aab7903, S=2,       96,      136
-1,      20160,      20160,      960,      241, 0x718b795d, S=2,       96,      136
-2,      20160,      20160,      960,      123, 0xd2fb3c10, S=2,       96,      136
-3,      20160,      20160,      960,      130, 0x28d03f70, S=2,       96,      136
-0,      21120,      21120,      960,      241, 0xc4246f83, S=2,       96,      136
-1,      21120,      21120,      960,      241, 0xec9577fe, S=2,       96,      136
-2,      21120,      21120,      960,      128, 0x269b4147, S=2,       96,      136
-3,      21120,      21120,      960,      135, 0xeb5d473a, S=2,       96,      136
-0,      22080,      22080,      960,      241, 0x4b69803f, S=2,       96,      136
-1,      22080,      22080,      960,      241, 0xd9d37f47, S=2,       96,      136
-2,      22080,      22080,      960,      122, 0x521c3fd0, S=2,       96,      136
-3,      22080,      22080,      960,      123, 0x9f0c3b46, S=2,       96,      136
-0,      23040,      23040,      960,      241, 0x2dbc77e4, S=2,       96,      136
-1,      23040,      23040,      960,      241, 0x8a4e784f, S=2,       96,      136
-2,      23040,      23040,      960,      179, 0xa53e5481, S=2,       96,      136
-3,      23040,      23040,      960,      175, 0x18d157ee, S=2,       96,      136
-0,      24000,      24000,      960,      241, 0x4f5b722d, S=3,       10,       96,      136
-1,      24000,      24000,      960,      241, 0xc7e67e1e, S=3,       10,       96,      136
-2,      24000,      24000,      960,      189, 0x736c5f4c, S=3,       10,       96,      136
-3,      24000,      24000,      960,      189, 0x63256352, S=3,       10,       96,      136
+0,          0,          0,      960,      371, 0x552eba36, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+1,          0,          0,      960,      381, 0x6779b329, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+2,          0,          0,      960,       66, 0x4ce02142, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+3,          0,          0,      960,       67, 0x935223f9, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+0,        960,        960,      960,      313, 0xa5e19a4f, S=2,       96, 0x00000000,      136, 0x00000000
+1,        960,        960,      960,      339, 0xf83daf6a, S=2,       96, 0x00000000,      136, 0x00000000
+2,        960,        960,      960,       62, 0x80c91ca8, S=2,       96, 0x00000000,      136, 0x00000000
+3,        960,        960,      960,       64, 0xaae41dd7, S=2,       96, 0x00000000,      136, 0x00000000
+0,       1920,       1920,      960,      210, 0x5fc26f7a, S=2,       96, 0x00000000,      136, 0x00000000
+1,       1920,       1920,      960,      207, 0xc8c768e8, S=2,       96, 0x00000000,      136, 0x00000000
+2,       1920,       1920,      960,       75, 0x85012598, S=2,       96, 0x00000000,      136, 0x00000000
+3,       1920,       1920,      960,       94, 0x5dc52d3b, S=2,       96, 0x00000000,      136, 0x00000000
+0,       2880,       2880,      960,      211, 0x8f006c62, S=2,       96, 0x00000000,      136, 0x00000000
+1,       2880,       2880,      960,      215, 0x30c8674d, S=2,       96, 0x00000000,      136, 0x00000000
+2,       2880,       2880,      960,       88, 0x46772b87, S=2,       96, 0x00000000,      136, 0x00000000
+3,       2880,       2880,      960,      105, 0x831c3191, S=2,       96, 0x00000000,      136, 0x00000000
+0,       3840,       3840,      960,      340, 0x3c92a527, S=2,       96, 0x00000000,      136, 0x00000000
+1,       3840,       3840,      960,      303, 0x65e09e91, S=2,       96, 0x00000000,      136, 0x00000000
+2,       3840,       3840,      960,      121, 0xc45d3ec1, S=2,       96, 0x00000000,      136, 0x00000000
+3,       3840,       3840,      960,      126, 0xff3a44d7, S=2,       96, 0x00000000,      136, 0x00000000
+0,       4800,       4800,      960,      206, 0x3087662a, S=2,       96, 0x00000000,      136, 0x00000000
+1,       4800,       4800,      960,      206, 0xd2b469de, S=2,       96, 0x00000000,      136, 0x00000000
+2,       4800,       4800,      960,      124, 0xd9423baf, S=2,       96, 0x00000000,      136, 0x00000000
+3,       4800,       4800,      960,      121, 0x24073ab0, S=2,       96, 0x00000000,      136, 0x00000000
+0,       5760,       5760,      960,      212, 0x85686b01, S=2,       96, 0x00000000,      136, 0x00000000
+1,       5760,       5760,      960,      230, 0x7ce56f22, S=2,       96, 0x00000000,      136, 0x00000000
+2,       5760,       5760,      960,      128, 0xca6840ad, S=2,       96, 0x00000000,      136, 0x00000000
+3,       5760,       5760,      960,      138, 0xa1f24207, S=2,       96, 0x00000000,      136, 0x00000000
+0,       6720,       6720,      960,      220, 0xd40572ca, S=2,       96, 0x00000000,      136, 0x00000000
+1,       6720,       6720,      960,      223, 0x760c74ce, S=2,       96, 0x00000000,      136, 0x00000000
+2,       6720,       6720,      960,      125, 0xd0674094, S=2,       96, 0x00000000,      136, 0x00000000
+3,       6720,       6720,      960,      130, 0x58f64293, S=2,       96, 0x00000000,      136, 0x00000000
+0,       7680,       7680,      960,      249, 0x9b6c77bb, S=2,       96, 0x00000000,      136, 0x00000000
+1,       7680,       7680,      960,      247, 0x660475b6, S=2,       96, 0x00000000,      136, 0x00000000
+2,       7680,       7680,      960,      125, 0x43de3911, S=2,       96, 0x00000000,      136, 0x00000000
+3,       7680,       7680,      960,      122, 0x0d4137b3, S=2,       96, 0x00000000,      136, 0x00000000
+0,       8640,       8640,      960,      262, 0x0d718316, S=2,       96, 0x00000000,      136, 0x00000000
+1,       8640,       8640,      960,      260, 0xce698563, S=2,       96, 0x00000000,      136, 0x00000000
+2,       8640,       8640,      960,      121, 0x7f1b4025, S=2,       96, 0x00000000,      136, 0x00000000
+3,       8640,       8640,      960,      121, 0xdae34205, S=2,       96, 0x00000000,      136, 0x00000000
+0,       9600,       9600,      960,      266, 0x6ffb86f0, S=2,       96, 0x00000000,      136, 0x00000000
+1,       9600,       9600,      960,      266, 0xa16f87bb, S=2,       96, 0x00000000,      136, 0x00000000
+2,       9600,       9600,      960,      119, 0x57703c74, S=2,       96, 0x00000000,      136, 0x00000000
+3,       9600,       9600,      960,      114, 0x06853bf5, S=2,       96, 0x00000000,      136, 0x00000000
+0,      10560,      10560,      960,      269, 0x43078081, S=2,       96, 0x00000000,      136, 0x00000000
+1,      10560,      10560,      960,      255, 0xff767870, S=2,       96, 0x00000000,      136, 0x00000000
+2,      10560,      10560,      960,      117, 0x86a43b70, S=2,       96, 0x00000000,      136, 0x00000000
+3,      10560,      10560,      960,      114, 0x4be5388e, S=2,       96, 0x00000000,      136, 0x00000000
+0,      11520,      11520,      960,      244, 0xd56f7885, S=2,       96, 0x00000000,      136, 0x00000000
+1,      11520,      11520,      960,      241, 0xbd1777f2, S=2,       96, 0x00000000,      136, 0x00000000
+2,      11520,      11520,      960,      110, 0xce96366a, S=2,       96, 0x00000000,      136, 0x00000000
+3,      11520,      11520,      960,      109, 0x120234bd, S=2,       96, 0x00000000,      136, 0x00000000
+0,      12480,      12480,      960,      241, 0xb8847e12, S=2,       96, 0x00000000,      136, 0x00000000
+1,      12480,      12480,      960,      241, 0x1bd27430, S=2,       96, 0x00000000,      136, 0x00000000
+2,      12480,      12480,      960,      127, 0x38ce3ff0, S=2,       96, 0x00000000,      136, 0x00000000
+3,      12480,      12480,      960,      127, 0x9f763c9b, S=2,       96, 0x00000000,      136, 0x00000000
+0,      13440,      13440,      960,      241, 0x9ee4787e, S=2,       96, 0x00000000,      136, 0x00000000
+1,      13440,      13440,      960,      241, 0x85ad821d, S=2,       96, 0x00000000,      136, 0x00000000
+2,      13440,      13440,      960,      141, 0xdc414884, S=2,       96, 0x00000000,      136, 0x00000000
+3,      13440,      13440,      960,      134, 0x95c9405e, S=2,       96, 0x00000000,      136, 0x00000000
+0,      14400,      14400,      960,      241, 0x060c78e3, S=2,       96, 0x00000000,      136, 0x00000000
+1,      14400,      14400,      960,      241, 0x03bb7e7e, S=2,       96, 0x00000000,      136, 0x00000000
+2,      14400,      14400,      960,      133, 0xfe184321, S=2,       96, 0x00000000,      136, 0x00000000
+3,      14400,      14400,      960,      125, 0x70523d7d, S=2,       96, 0x00000000,      136, 0x00000000
+0,      15360,      15360,      960,      241, 0xf7c57f6b, S=2,       96, 0x00000000,      136, 0x00000000
+1,      15360,      15360,      960,      241, 0x58ed7656, S=2,       96, 0x00000000,      136, 0x00000000
+2,      15360,      15360,      960,      119, 0x33b83af3, S=2,       96, 0x00000000,      136, 0x00000000
+3,      15360,      15360,      960,      121, 0x3f353eb3, S=2,       96, 0x00000000,      136, 0x00000000
+0,      16320,      16320,      960,      241, 0xc0077948, S=2,       96, 0x00000000,      136, 0x00000000
+1,      16320,      16320,      960,      241, 0x886a7f2a, S=2,       96, 0x00000000,      136, 0x00000000
+2,      16320,      16320,      960,      118, 0x122d3d16, S=2,       96, 0x00000000,      136, 0x00000000
+3,      16320,      16320,      960,      123, 0x673d3bbd, S=2,       96, 0x00000000,      136, 0x00000000
+0,      17280,      17280,      960,      241, 0x51777d39, S=2,       96, 0x00000000,      136, 0x00000000
+1,      17280,      17280,      960,      241, 0x25aa7240, S=2,       96, 0x00000000,      136, 0x00000000
+2,      17280,      17280,      960,      116, 0xe4ff3d75, S=2,       96, 0x00000000,      136, 0x00000000
+3,      17280,      17280,      960,      114, 0x95c638df, S=2,       96, 0x00000000,      136, 0x00000000
+0,      18240,      18240,      960,      241, 0x8a038527, S=2,       96, 0x00000000,      136, 0x00000000
+1,      18240,      18240,      960,      241, 0x151877bf, S=2,       96, 0x00000000,      136, 0x00000000
+2,      18240,      18240,      960,      116, 0xcb0238e6, S=2,       96, 0x00000000,      136, 0x00000000
+3,      18240,      18240,      960,      122, 0xc1fb4201, S=2,       96, 0x00000000,      136, 0x00000000
+0,      19200,      19200,      960,      241, 0xff1a839d, S=2,       96, 0x00000000,      136, 0x00000000
+1,      19200,      19200,      960,      241, 0x243c7927, S=2,       96, 0x00000000,      136, 0x00000000
+2,      19200,      19200,      960,      117, 0x4b723619, S=2,       96, 0x00000000,      136, 0x00000000
+3,      19200,      19200,      960,      113, 0xccf439e2, S=2,       96, 0x00000000,      136, 0x00000000
+0,      20160,      20160,      960,      241, 0x9aab7903, S=2,       96, 0x00000000,      136, 0x00000000
+1,      20160,      20160,      960,      241, 0x718b795d, S=2,       96, 0x00000000,      136, 0x00000000
+2,      20160,      20160,      960,      123, 0xd2fb3c10, S=2,       96, 0x00000000,      136, 0x00000000
+3,      20160,      20160,      960,      130, 0x28d03f70, S=2,       96, 0x00000000,      136, 0x00000000
+0,      21120,      21120,      960,      241, 0xc4246f83, S=2,       96, 0x00000000,      136, 0x00000000
+1,      21120,      21120,      960,      241, 0xec9577fe, S=2,       96, 0x00000000,      136, 0x00000000
+2,      21120,      21120,      960,      128, 0x269b4147, S=2,       96, 0x00000000,      136, 0x00000000
+3,      21120,      21120,      960,      135, 0xeb5d473a, S=2,       96, 0x00000000,      136, 0x00000000
+0,      22080,      22080,      960,      241, 0x4b69803f, S=2,       96, 0x00000000,      136, 0x00000000
+1,      22080,      22080,      960,      241, 0xd9d37f47, S=2,       96, 0x00000000,      136, 0x00000000
+2,      22080,      22080,      960,      122, 0x521c3fd0, S=2,       96, 0x00000000,      136, 0x00000000
+3,      22080,      22080,      960,      123, 0x9f0c3b46, S=2,       96, 0x00000000,      136, 0x00000000
+0,      23040,      23040,      960,      241, 0x2dbc77e4, S=2,       96, 0x00000000,      136, 0x00000000
+1,      23040,      23040,      960,      241, 0x8a4e784f, S=2,       96, 0x00000000,      136, 0x00000000
+2,      23040,      23040,      960,      179, 0xa53e5481, S=2,       96, 0x00000000,      136, 0x00000000
+3,      23040,      23040,      960,      175, 0x18d157ee, S=2,       96, 0x00000000,      136, 0x00000000
+0,      24000,      24000,      960,      241, 0x4f5b722d, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
+1,      24000,      24000,      960,      241, 0xc7e67e1e, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
+2,      24000,      24000,      960,      189, 0x736c5f4c, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
+3,      24000,      24000,      960,      189, 0x63256352, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
 [STREAM_GROUP]
 index=0
 id=0x12c
diff --git a/tests/ref/fate/iamf-5_1-demux b/tests/ref/fate/iamf-5_1-demux
index 1f0b67b1f74..4bf9bdf3ffa 100644
--- a/tests/ref/fate/iamf-5_1-demux
+++ b/tests/ref/fate/iamf-5_1-demux
@@ -22,110 +22,110 @@ 
 #codec_id 3: opus
 #sample_rate 3: 48000
 #channel_layout_name 3: mono
-0,          0,          0,      960,      371, 0x552eba36, S=3,       10,       96,      136
-1,          0,          0,      960,      381, 0x6779b329, S=3,       10,       96,      136
-2,          0,          0,      960,       66, 0x4ce02142, S=3,       10,       96,      136
-3,          0,          0,      960,       67, 0x935223f9, S=3,       10,       96,      136
-0,        960,        960,      960,      313, 0xa5e19a4f, S=2,       96,      136
-1,        960,        960,      960,      339, 0xf83daf6a, S=2,       96,      136
-2,        960,        960,      960,       62, 0x80c91ca8, S=2,       96,      136
-3,        960,        960,      960,       64, 0xaae41dd7, S=2,       96,      136
-0,       1920,       1920,      960,      210, 0x5fc26f7a, S=2,       96,      136
-1,       1920,       1920,      960,      207, 0xc8c768e8, S=2,       96,      136
-2,       1920,       1920,      960,       75, 0x85012598, S=2,       96,      136
-3,       1920,       1920,      960,       94, 0x5dc52d3b, S=2,       96,      136
-0,       2880,       2880,      960,      211, 0x8f006c62, S=2,       96,      136
-1,       2880,       2880,      960,      215, 0x30c8674d, S=2,       96,      136
-2,       2880,       2880,      960,       88, 0x46772b87, S=2,       96,      136
-3,       2880,       2880,      960,      105, 0x831c3191, S=2,       96,      136
-0,       3840,       3840,      960,      340, 0x3c92a527, S=2,       96,      136
-1,       3840,       3840,      960,      303, 0x65e09e91, S=2,       96,      136
-2,       3840,       3840,      960,      121, 0xc45d3ec1, S=2,       96,      136
-3,       3840,       3840,      960,      126, 0xff3a44d7, S=2,       96,      136
-0,       4800,       4800,      960,      206, 0x3087662a, S=2,       96,      136
-1,       4800,       4800,      960,      206, 0xd2b469de, S=2,       96,      136
-2,       4800,       4800,      960,      124, 0xd9423baf, S=2,       96,      136
-3,       4800,       4800,      960,      121, 0x24073ab0, S=2,       96,      136
-0,       5760,       5760,      960,      212, 0x85686b01, S=2,       96,      136
-1,       5760,       5760,      960,      230, 0x7ce56f22, S=2,       96,      136
-2,       5760,       5760,      960,      128, 0xca6840ad, S=2,       96,      136
-3,       5760,       5760,      960,      138, 0xa1f24207, S=2,       96,      136
-0,       6720,       6720,      960,      220, 0xd40572ca, S=2,       96,      136
-1,       6720,       6720,      960,      223, 0x760c74ce, S=2,       96,      136
-2,       6720,       6720,      960,      125, 0xd0674094, S=2,       96,      136
-3,       6720,       6720,      960,      130, 0x58f64293, S=2,       96,      136
-0,       7680,       7680,      960,      249, 0x9b6c77bb, S=2,       96,      136
-1,       7680,       7680,      960,      247, 0x660475b6, S=2,       96,      136
-2,       7680,       7680,      960,      125, 0x43de3911, S=2,       96,      136
-3,       7680,       7680,      960,      122, 0x0d4137b3, S=2,       96,      136
-0,       8640,       8640,      960,      262, 0x0d718316, S=2,       96,      136
-1,       8640,       8640,      960,      260, 0xce698563, S=2,       96,      136
-2,       8640,       8640,      960,      121, 0x7f1b4025, S=2,       96,      136
-3,       8640,       8640,      960,      121, 0xdae34205, S=2,       96,      136
-0,       9600,       9600,      960,      266, 0x6ffb86f0, S=2,       96,      136
-1,       9600,       9600,      960,      266, 0xa16f87bb, S=2,       96,      136
-2,       9600,       9600,      960,      119, 0x57703c74, S=2,       96,      136
-3,       9600,       9600,      960,      114, 0x06853bf5, S=2,       96,      136
-0,      10560,      10560,      960,      269, 0x43078081, S=2,       96,      136
-1,      10560,      10560,      960,      255, 0xff767870, S=2,       96,      136
-2,      10560,      10560,      960,      117, 0x86a43b70, S=2,       96,      136
-3,      10560,      10560,      960,      114, 0x4be5388e, S=2,       96,      136
-0,      11520,      11520,      960,      244, 0xd56f7885, S=2,       96,      136
-1,      11520,      11520,      960,      241, 0xbd1777f2, S=2,       96,      136
-2,      11520,      11520,      960,      110, 0xce96366a, S=2,       96,      136
-3,      11520,      11520,      960,      109, 0x120234bd, S=2,       96,      136
-0,      12480,      12480,      960,      241, 0xb8847e12, S=2,       96,      136
-1,      12480,      12480,      960,      241, 0x1bd27430, S=2,       96,      136
-2,      12480,      12480,      960,      127, 0x38ce3ff0, S=2,       96,      136
-3,      12480,      12480,      960,      127, 0x9f763c9b, S=2,       96,      136
-0,      13440,      13440,      960,      241, 0x9ee4787e, S=2,       96,      136
-1,      13440,      13440,      960,      241, 0x85ad821d, S=2,       96,      136
-2,      13440,      13440,      960,      141, 0xdc414884, S=2,       96,      136
-3,      13440,      13440,      960,      134, 0x95c9405e, S=2,       96,      136
-0,      14400,      14400,      960,      241, 0x060c78e3, S=2,       96,      136
-1,      14400,      14400,      960,      241, 0x03bb7e7e, S=2,       96,      136
-2,      14400,      14400,      960,      133, 0xfe184321, S=2,       96,      136
-3,      14400,      14400,      960,      125, 0x70523d7d, S=2,       96,      136
-0,      15360,      15360,      960,      241, 0xf7c57f6b, S=2,       96,      136
-1,      15360,      15360,      960,      241, 0x58ed7656, S=2,       96,      136
-2,      15360,      15360,      960,      119, 0x33b83af3, S=2,       96,      136
-3,      15360,      15360,      960,      121, 0x3f353eb3, S=2,       96,      136
-0,      16320,      16320,      960,      241, 0xc0077948, S=2,       96,      136
-1,      16320,      16320,      960,      241, 0x886a7f2a, S=2,       96,      136
-2,      16320,      16320,      960,      118, 0x122d3d16, S=2,       96,      136
-3,      16320,      16320,      960,      123, 0x673d3bbd, S=2,       96,      136
-0,      17280,      17280,      960,      241, 0x51777d39, S=2,       96,      136
-1,      17280,      17280,      960,      241, 0x25aa7240, S=2,       96,      136
-2,      17280,      17280,      960,      116, 0xe4ff3d75, S=2,       96,      136
-3,      17280,      17280,      960,      114, 0x95c638df, S=2,       96,      136
-0,      18240,      18240,      960,      241, 0x8a038527, S=2,       96,      136
-1,      18240,      18240,      960,      241, 0x151877bf, S=2,       96,      136
-2,      18240,      18240,      960,      116, 0xcb0238e6, S=2,       96,      136
-3,      18240,      18240,      960,      122, 0xc1fb4201, S=2,       96,      136
-0,      19200,      19200,      960,      241, 0xff1a839d, S=2,       96,      136
-1,      19200,      19200,      960,      241, 0x243c7927, S=2,       96,      136
-2,      19200,      19200,      960,      117, 0x4b723619, S=2,       96,      136
-3,      19200,      19200,      960,      113, 0xccf439e2, S=2,       96,      136
-0,      20160,      20160,      960,      241, 0x9aab7903, S=2,       96,      136
-1,      20160,      20160,      960,      241, 0x718b795d, S=2,       96,      136
-2,      20160,      20160,      960,      123, 0xd2fb3c10, S=2,       96,      136
-3,      20160,      20160,      960,      130, 0x28d03f70, S=2,       96,      136
-0,      21120,      21120,      960,      241, 0xc4246f83, S=2,       96,      136
-1,      21120,      21120,      960,      241, 0xec9577fe, S=2,       96,      136
-2,      21120,      21120,      960,      128, 0x269b4147, S=2,       96,      136
-3,      21120,      21120,      960,      135, 0xeb5d473a, S=2,       96,      136
-0,      22080,      22080,      960,      241, 0x4b69803f, S=2,       96,      136
-1,      22080,      22080,      960,      241, 0xd9d37f47, S=2,       96,      136
-2,      22080,      22080,      960,      122, 0x521c3fd0, S=2,       96,      136
-3,      22080,      22080,      960,      123, 0x9f0c3b46, S=2,       96,      136
-0,      23040,      23040,      960,      241, 0x2dbc77e4, S=2,       96,      136
-1,      23040,      23040,      960,      241, 0x8a4e784f, S=2,       96,      136
-2,      23040,      23040,      960,      179, 0xa53e5481, S=2,       96,      136
-3,      23040,      23040,      960,      175, 0x18d157ee, S=2,       96,      136
-0,      24000,      24000,      960,      241, 0x4f5b722d, S=3,       10,       96,      136
-1,      24000,      24000,      960,      241, 0xc7e67e1e, S=3,       10,       96,      136
-2,      24000,      24000,      960,      189, 0x736c5f4c, S=3,       10,       96,      136
-3,      24000,      24000,      960,      189, 0x63256352, S=3,       10,       96,      136
+0,          0,          0,      960,      371, 0x552eba36, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+1,          0,          0,      960,      381, 0x6779b329, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+2,          0,          0,      960,       66, 0x4ce02142, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+3,          0,          0,      960,       67, 0x935223f9, S=3,       10, 0x02390039,       96, 0x00000000,      136, 0x00000000
+0,        960,        960,      960,      313, 0xa5e19a4f, S=2,       96, 0x00000000,      136, 0x00000000
+1,        960,        960,      960,      339, 0xf83daf6a, S=2,       96, 0x00000000,      136, 0x00000000
+2,        960,        960,      960,       62, 0x80c91ca8, S=2,       96, 0x00000000,      136, 0x00000000
+3,        960,        960,      960,       64, 0xaae41dd7, S=2,       96, 0x00000000,      136, 0x00000000
+0,       1920,       1920,      960,      210, 0x5fc26f7a, S=2,       96, 0x00000000,      136, 0x00000000
+1,       1920,       1920,      960,      207, 0xc8c768e8, S=2,       96, 0x00000000,      136, 0x00000000
+2,       1920,       1920,      960,       75, 0x85012598, S=2,       96, 0x00000000,      136, 0x00000000
+3,       1920,       1920,      960,       94, 0x5dc52d3b, S=2,       96, 0x00000000,      136, 0x00000000
+0,       2880,       2880,      960,      211, 0x8f006c62, S=2,       96, 0x00000000,      136, 0x00000000
+1,       2880,       2880,      960,      215, 0x30c8674d, S=2,       96, 0x00000000,      136, 0x00000000
+2,       2880,       2880,      960,       88, 0x46772b87, S=2,       96, 0x00000000,      136, 0x00000000
+3,       2880,       2880,      960,      105, 0x831c3191, S=2,       96, 0x00000000,      136, 0x00000000
+0,       3840,       3840,      960,      340, 0x3c92a527, S=2,       96, 0x00000000,      136, 0x00000000
+1,       3840,       3840,      960,      303, 0x65e09e91, S=2,       96, 0x00000000,      136, 0x00000000
+2,       3840,       3840,      960,      121, 0xc45d3ec1, S=2,       96, 0x00000000,      136, 0x00000000
+3,       3840,       3840,      960,      126, 0xff3a44d7, S=2,       96, 0x00000000,      136, 0x00000000
+0,       4800,       4800,      960,      206, 0x3087662a, S=2,       96, 0x00000000,      136, 0x00000000
+1,       4800,       4800,      960,      206, 0xd2b469de, S=2,       96, 0x00000000,      136, 0x00000000
+2,       4800,       4800,      960,      124, 0xd9423baf, S=2,       96, 0x00000000,      136, 0x00000000
+3,       4800,       4800,      960,      121, 0x24073ab0, S=2,       96, 0x00000000,      136, 0x00000000
+0,       5760,       5760,      960,      212, 0x85686b01, S=2,       96, 0x00000000,      136, 0x00000000
+1,       5760,       5760,      960,      230, 0x7ce56f22, S=2,       96, 0x00000000,      136, 0x00000000
+2,       5760,       5760,      960,      128, 0xca6840ad, S=2,       96, 0x00000000,      136, 0x00000000
+3,       5760,       5760,      960,      138, 0xa1f24207, S=2,       96, 0x00000000,      136, 0x00000000
+0,       6720,       6720,      960,      220, 0xd40572ca, S=2,       96, 0x00000000,      136, 0x00000000
+1,       6720,       6720,      960,      223, 0x760c74ce, S=2,       96, 0x00000000,      136, 0x00000000
+2,       6720,       6720,      960,      125, 0xd0674094, S=2,       96, 0x00000000,      136, 0x00000000
+3,       6720,       6720,      960,      130, 0x58f64293, S=2,       96, 0x00000000,      136, 0x00000000
+0,       7680,       7680,      960,      249, 0x9b6c77bb, S=2,       96, 0x00000000,      136, 0x00000000
+1,       7680,       7680,      960,      247, 0x660475b6, S=2,       96, 0x00000000,      136, 0x00000000
+2,       7680,       7680,      960,      125, 0x43de3911, S=2,       96, 0x00000000,      136, 0x00000000
+3,       7680,       7680,      960,      122, 0x0d4137b3, S=2,       96, 0x00000000,      136, 0x00000000
+0,       8640,       8640,      960,      262, 0x0d718316, S=2,       96, 0x00000000,      136, 0x00000000
+1,       8640,       8640,      960,      260, 0xce698563, S=2,       96, 0x00000000,      136, 0x00000000
+2,       8640,       8640,      960,      121, 0x7f1b4025, S=2,       96, 0x00000000,      136, 0x00000000
+3,       8640,       8640,      960,      121, 0xdae34205, S=2,       96, 0x00000000,      136, 0x00000000
+0,       9600,       9600,      960,      266, 0x6ffb86f0, S=2,       96, 0x00000000,      136, 0x00000000
+1,       9600,       9600,      960,      266, 0xa16f87bb, S=2,       96, 0x00000000,      136, 0x00000000
+2,       9600,       9600,      960,      119, 0x57703c74, S=2,       96, 0x00000000,      136, 0x00000000
+3,       9600,       9600,      960,      114, 0x06853bf5, S=2,       96, 0x00000000,      136, 0x00000000
+0,      10560,      10560,      960,      269, 0x43078081, S=2,       96, 0x00000000,      136, 0x00000000
+1,      10560,      10560,      960,      255, 0xff767870, S=2,       96, 0x00000000,      136, 0x00000000
+2,      10560,      10560,      960,      117, 0x86a43b70, S=2,       96, 0x00000000,      136, 0x00000000
+3,      10560,      10560,      960,      114, 0x4be5388e, S=2,       96, 0x00000000,      136, 0x00000000
+0,      11520,      11520,      960,      244, 0xd56f7885, S=2,       96, 0x00000000,      136, 0x00000000
+1,      11520,      11520,      960,      241, 0xbd1777f2, S=2,       96, 0x00000000,      136, 0x00000000
+2,      11520,      11520,      960,      110, 0xce96366a, S=2,       96, 0x00000000,      136, 0x00000000
+3,      11520,      11520,      960,      109, 0x120234bd, S=2,       96, 0x00000000,      136, 0x00000000
+0,      12480,      12480,      960,      241, 0xb8847e12, S=2,       96, 0x00000000,      136, 0x00000000
+1,      12480,      12480,      960,      241, 0x1bd27430, S=2,       96, 0x00000000,      136, 0x00000000
+2,      12480,      12480,      960,      127, 0x38ce3ff0, S=2,       96, 0x00000000,      136, 0x00000000
+3,      12480,      12480,      960,      127, 0x9f763c9b, S=2,       96, 0x00000000,      136, 0x00000000
+0,      13440,      13440,      960,      241, 0x9ee4787e, S=2,       96, 0x00000000,      136, 0x00000000
+1,      13440,      13440,      960,      241, 0x85ad821d, S=2,       96, 0x00000000,      136, 0x00000000
+2,      13440,      13440,      960,      141, 0xdc414884, S=2,       96, 0x00000000,      136, 0x00000000
+3,      13440,      13440,      960,      134, 0x95c9405e, S=2,       96, 0x00000000,      136, 0x00000000
+0,      14400,      14400,      960,      241, 0x060c78e3, S=2,       96, 0x00000000,      136, 0x00000000
+1,      14400,      14400,      960,      241, 0x03bb7e7e, S=2,       96, 0x00000000,      136, 0x00000000
+2,      14400,      14400,      960,      133, 0xfe184321, S=2,       96, 0x00000000,      136, 0x00000000
+3,      14400,      14400,      960,      125, 0x70523d7d, S=2,       96, 0x00000000,      136, 0x00000000
+0,      15360,      15360,      960,      241, 0xf7c57f6b, S=2,       96, 0x00000000,      136, 0x00000000
+1,      15360,      15360,      960,      241, 0x58ed7656, S=2,       96, 0x00000000,      136, 0x00000000
+2,      15360,      15360,      960,      119, 0x33b83af3, S=2,       96, 0x00000000,      136, 0x00000000
+3,      15360,      15360,      960,      121, 0x3f353eb3, S=2,       96, 0x00000000,      136, 0x00000000
+0,      16320,      16320,      960,      241, 0xc0077948, S=2,       96, 0x00000000,      136, 0x00000000
+1,      16320,      16320,      960,      241, 0x886a7f2a, S=2,       96, 0x00000000,      136, 0x00000000
+2,      16320,      16320,      960,      118, 0x122d3d16, S=2,       96, 0x00000000,      136, 0x00000000
+3,      16320,      16320,      960,      123, 0x673d3bbd, S=2,       96, 0x00000000,      136, 0x00000000
+0,      17280,      17280,      960,      241, 0x51777d39, S=2,       96, 0x00000000,      136, 0x00000000
+1,      17280,      17280,      960,      241, 0x25aa7240, S=2,       96, 0x00000000,      136, 0x00000000
+2,      17280,      17280,      960,      116, 0xe4ff3d75, S=2,       96, 0x00000000,      136, 0x00000000
+3,      17280,      17280,      960,      114, 0x95c638df, S=2,       96, 0x00000000,      136, 0x00000000
+0,      18240,      18240,      960,      241, 0x8a038527, S=2,       96, 0x00000000,      136, 0x00000000
+1,      18240,      18240,      960,      241, 0x151877bf, S=2,       96, 0x00000000,      136, 0x00000000
+2,      18240,      18240,      960,      116, 0xcb0238e6, S=2,       96, 0x00000000,      136, 0x00000000
+3,      18240,      18240,      960,      122, 0xc1fb4201, S=2,       96, 0x00000000,      136, 0x00000000
+0,      19200,      19200,      960,      241, 0xff1a839d, S=2,       96, 0x00000000,      136, 0x00000000
+1,      19200,      19200,      960,      241, 0x243c7927, S=2,       96, 0x00000000,      136, 0x00000000
+2,      19200,      19200,      960,      117, 0x4b723619, S=2,       96, 0x00000000,      136, 0x00000000
+3,      19200,      19200,      960,      113, 0xccf439e2, S=2,       96, 0x00000000,      136, 0x00000000
+0,      20160,      20160,      960,      241, 0x9aab7903, S=2,       96, 0x00000000,      136, 0x00000000
+1,      20160,      20160,      960,      241, 0x718b795d, S=2,       96, 0x00000000,      136, 0x00000000
+2,      20160,      20160,      960,      123, 0xd2fb3c10, S=2,       96, 0x00000000,      136, 0x00000000
+3,      20160,      20160,      960,      130, 0x28d03f70, S=2,       96, 0x00000000,      136, 0x00000000
+0,      21120,      21120,      960,      241, 0xc4246f83, S=2,       96, 0x00000000,      136, 0x00000000
+1,      21120,      21120,      960,      241, 0xec9577fe, S=2,       96, 0x00000000,      136, 0x00000000
+2,      21120,      21120,      960,      128, 0x269b4147, S=2,       96, 0x00000000,      136, 0x00000000
+3,      21120,      21120,      960,      135, 0xeb5d473a, S=2,       96, 0x00000000,      136, 0x00000000
+0,      22080,      22080,      960,      241, 0x4b69803f, S=2,       96, 0x00000000,      136, 0x00000000
+1,      22080,      22080,      960,      241, 0xd9d37f47, S=2,       96, 0x00000000,      136, 0x00000000
+2,      22080,      22080,      960,      122, 0x521c3fd0, S=2,       96, 0x00000000,      136, 0x00000000
+3,      22080,      22080,      960,      123, 0x9f0c3b46, S=2,       96, 0x00000000,      136, 0x00000000
+0,      23040,      23040,      960,      241, 0x2dbc77e4, S=2,       96, 0x00000000,      136, 0x00000000
+1,      23040,      23040,      960,      241, 0x8a4e784f, S=2,       96, 0x00000000,      136, 0x00000000
+2,      23040,      23040,      960,      179, 0xa53e5481, S=2,       96, 0x00000000,      136, 0x00000000
+3,      23040,      23040,      960,      175, 0x18d157ee, S=2,       96, 0x00000000,      136, 0x00000000
+0,      24000,      24000,      960,      241, 0x4f5b722d, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
+1,      24000,      24000,      960,      241, 0xc7e67e1e, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
+2,      24000,      24000,      960,      189, 0x736c5f4c, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
+3,      24000,      24000,      960,      189, 0x63256352, S=3,       10, 0x033a008a,       96, 0x00000000,      136, 0x00000000
 [STREAM_GROUP]
 index=0
 id=0x12c
diff --git a/tests/ref/fate/id3v2-priv-remux b/tests/ref/fate/id3v2-priv-remux
index a0f370142e2..32eb76e41ed 100644
--- a/tests/ref/fate/id3v2-priv-remux
+++ b/tests/ref/fate/id3v2-priv-remux
@@ -5,7 +5,7 @@  bb2816e3a05ce136e9ac14479c1ebe24 *tests/data/fate/id3v2-priv-remux.mp3
 #codec_id 0: mp3
 #sample_rate 0: 48000
 #channel_layout_name 0: mono
-0,    -155528,    -155528,   338688,      192, 0x3774510e, S=1,       10
+0,    -155528,    -155528,   338688,      192, 0x3774510e, S=1,       10, 0x00bc0013
 0,     183160,     183160,   338688,      192, 0x856c5b02
 0,     521848,     521848,   338688,      192, 0xb86e557f
 0,     860536,     860536,   338688,      192, 0x3b6c5cb7
diff --git a/tests/ref/fate/matroska-hdr10-plus-remux b/tests/ref/fate/matroska-hdr10-plus-remux
index 923fd2a7abe..699d888c19d 100644
--- a/tests/ref/fate/matroska-hdr10-plus-remux
+++ b/tests/ref/fate/matroska-hdr10-plus-remux
@@ -5,7 +5,7 @@ 
 #codec_id 0: vp9
 #dimensions 0: 1280x720
 #sar 0: 1/1
-0,          0,          0,       40,    13350, 0x5f64e443, S=1,    11304
+0,          0,          0,       40,    13350, 0x5f64e443, S=1,    11304, 0xf822276d
 [PACKET]
 codec_type=video
 stream_index=0
diff --git a/tests/ref/fate/matroska-ogg-opus-remux b/tests/ref/fate/matroska-ogg-opus-remux
index bf6613e2573..c303b1c9492 100644
--- a/tests/ref/fate/matroska-ogg-opus-remux
+++ b/tests/ref/fate/matroska-ogg-opus-remux
@@ -46,7 +46,7 @@ 
 0,        733,        733,       20,      219, 0xe2906c62
 0,        753,        753,       20,      217, 0xcf316ba1
 0,        773,        773,       20,      217, 0x470b6eea
-0,        793,        793,       20,      359, 0x36c2a18a, S=1,       10
+0,        793,        793,       20,      359, 0x36c2a18a, S=1,       10, 0x0232005e
 [PACKET]
 codec_type=audio
 stream_index=0
diff --git a/tests/ref/fate/matroska-opus-remux b/tests/ref/fate/matroska-opus-remux
index 9f2526dc575..31c656f8225 100644
--- a/tests/ref/fate/matroska-opus-remux
+++ b/tests/ref/fate/matroska-opus-remux
@@ -57,7 +57,7 @@  b9881205f8945fefc16a6f23474071a6 *tests/data/fate/matroska-opus-remux.matroska
 0,        954,        954,       20,      154, 0x9a084dcd
 0,        974,        974,       20,      155, 0x90a54ac8
 0,        994,        994,       20,      324, 0x8e34a2f5
-0,       1014,       1014,       20,      268, 0x10f37203, S=1,       10
+0,       1014,       1014,       20,      268, 0x10f37203, S=1,       10, 0x049600c4
 [PACKET]
 codec_type=audio
 stream_index=0
diff --git a/tests/ref/fate/matroska-vp8-alpha-remux b/tests/ref/fate/matroska-vp8-alpha-remux
index f6c24dead64..7da58088247 100644
--- a/tests/ref/fate/matroska-vp8-alpha-remux
+++ b/tests/ref/fate/matroska-vp8-alpha-remux
@@ -5,13 +5,13 @@ 
 #codec_id 0: vp8
 #dimensions 0: 320x213
 #sar 0: 1/1
-0,          0,          0,       33,     2108, 0x59b92a34, S=1,     1900
-0,         32,         32,       33,      142, 0x2f2a3fed, F=0x0, S=1,      160
-0,         65,         65,       33,      157, 0x17804767, F=0x0, S=1,      209
-0,         99,         99,       33,      206, 0x537262ca, F=0x0, S=1,      317
-0,        132,        132,       33,      259, 0x73ff74b6, F=0x0, S=1,      384
-0,        165,        165,       33,      320, 0x0fcf8ce4, F=0x0, S=1,      415
-0,        199,        199,       33,      377, 0x8fffb5f5, F=0x0, S=1,      475
+0,          0,          0,       33,     2108, 0x59b92a34, S=1,     1900, 0x8fb3adc5
+0,         32,         32,       33,      142, 0x2f2a3fed, F=0x0, S=1,      160, 0xa13346af
+0,         65,         65,       33,      157, 0x17804767, F=0x0, S=1,      209, 0x64115f15
+0,         99,         99,       33,      206, 0x537262ca, F=0x0, S=1,      317, 0x44a09dd0
+0,        132,        132,       33,      259, 0x73ff74b6, F=0x0, S=1,      384, 0x2ee2c588
+0,        165,        165,       33,      320, 0x0fcf8ce4, F=0x0, S=1,      415, 0xff68c953
+0,        199,        199,       33,      377, 0x8fffb5f5, F=0x0, S=1,      475, 0x4166f3eb
 [STREAM]
 DISPOSITION:default=1
 DISPOSITION:dub=0
diff --git a/tests/ref/fate/mov-cover-image b/tests/ref/fate/mov-cover-image
index 5f65c630ea2..b463f5da199 100644
--- a/tests/ref/fate/mov-cover-image
+++ b/tests/ref/fate/mov-cover-image
@@ -16,7 +16,7 @@ 
 #codec_id 2: png
 #dimensions 2: 600x600
 #sar 2: 1/1
-0,      -2112,      -2112,     1024,        6, 0x027e00e8, F=0x5, S=1,       10
+0,      -2112,      -2112,     1024,        6, 0x027e00e8, F=0x5, S=1,       10, 0x02c80048
 0,      -1088,      -1088,     1024,        6, 0x027e00e8, F=0x5
 0,        -64,        -64,     1024,        6, 0x027e00e8
 1,          0,          0,        0,    25441, 0xe82503b0
diff --git a/tests/ref/fate/segment-mp4-to-ts b/tests/ref/fate/segment-mp4-to-ts
index 29944162704..07fda0cefc1 100644
--- a/tests/ref/fate/segment-mp4-to-ts
+++ b/tests/ref/fate/segment-mp4-to-ts
@@ -4,129 +4,129 @@ 
 #codec_id 0: h264
 #dimensions 0: 640x360
 #sar 0: 1/1
-0,      -7200,          0,     3600,    22630, 0x9b109541, S=1,        1
-0,      -3600,      14400,     3600,     4021, 0xbf7cdb02, F=0x0, S=1,        1
-0,          0,       7200,     3600,     1096, 0x4f162690, F=0x0, S=1,        1
-0,       3600,       3600,     3600,      687, 0x00394b95, F=0x0, S=1,        1
-0,       7200,      10800,     3600,      445, 0x08c3d065, F=0x0, S=1,        1
-0,      10800,      28800,     3600,     4212, 0x56d12b8f, F=0x0, S=1,        1
-0,      14400,      21600,     3600,     1117, 0xd521260b, F=0x0, S=1,        1
-0,      18000,      18000,     3600,      892, 0x4262bdbc, F=0x0, S=1,        1
-0,      21600,      25200,     3600,      480, 0x3be1ef0b, F=0x0, S=1,        1
-0,      25200,      43200,     3600,     4065, 0x40dee237, F=0x0, S=1,        1
-0,      28800,      36000,     3600,      962, 0x31a4ceb1, F=0x0, S=1,        1
-0,      32400,      32400,     3600,      651, 0xb2aa317a, F=0x0, S=1,        1
-0,      36000,      39600,     3600,      543, 0x9c4e0024, F=0x0, S=1,        1
-0,      39600,      57600,     3600,     4221, 0x77c23977, F=0x0, S=1,        1
-0,      43200,      50400,     3600,     1040, 0x482cfa34, F=0x0, S=1,        1
-0,      46800,      46800,     3600,      576, 0x2686136a, F=0x0, S=1,        1
-0,      50400,      54000,     3600,      607, 0xc53c2339, F=0x0, S=1,        1
-0,      54000,      72000,     3600,     4755, 0x2f642b58, F=0x0, S=1,        1
-0,      57600,      64800,     3600,     1182, 0xbe1a4847, F=0x0, S=1,        1
-0,      61200,      61200,     3600,      809, 0x8d948a4e, F=0x0, S=1,        1
-0,      64800,      68400,     3600,      656, 0x4fa03c2b, F=0x0, S=1,        1
-0,      68400,      86400,     3600,    26555, 0x5629b584, S=1,        1
-0,      72000,      79200,     3600,     1141, 0x761b31e8, F=0x0, S=1,        1
-0,      75600,      75600,     3600,      717, 0x57746351, F=0x0, S=1,        1
-0,      79200,      82800,     3600,      693, 0x78b24263, F=0x0, S=1,        1
-0,      82800,     100800,     3600,     3417, 0x560dbc89, F=0x0, S=1,        1
-0,      86400,      93600,     3600,     1128, 0xc0f1383c, F=0x0, S=1,        1
-0,      90000,      90000,     3600,      650, 0xc3ad485e, F=0x0, S=1,        1
-0,      93600,      97200,     3600,      766, 0xd3e9757d, F=0x0, S=1,        1
-0,      97200,     115200,     3600,     4268, 0xec1235b5, F=0x0, S=1,        1
-0,     100800,     108000,     3600,     1119, 0x65f51fb7, F=0x0, S=1,        1
-0,     104400,     104400,     3600,      766, 0x213b78d3, F=0x0, S=1,        1
-0,     108000,     111600,     3600,      770, 0xa7537e6d, F=0x0, S=1,        1
-0,     111600,     129600,     3600,     6349, 0xec225cf9, F=0x0, S=1,        1
-0,     115200,     122400,     3600,     1188, 0x9dea396c, F=0x0, S=1,        1
-0,     118800,     118800,     3600,      805, 0xdd9e88d0, F=0x0, S=1,        1
-0,     122400,     126000,     3600,      752, 0x1f93730a, F=0x0, S=1,        1
-0,     126000,     144000,     3600,     5502, 0x501bda5c, F=0x0, S=1,        1
-0,     129600,     136800,     3600,     1240, 0x7e3661ea, F=0x0, S=1,        1
-0,     133200,     133200,     3600,      830, 0xa8249f38, F=0x0, S=1,        1
-0,     136800,     140400,     3600,      754, 0xab1c815e, F=0x0, S=1,        1
-0,     140400,     158400,     3600,     5328, 0xd2c55ac6, F=0x0, S=1,        1
-0,     144000,     151200,     3600,     1271, 0x46006870, F=0x0, S=1,        1
-0,     147600,     147600,     3600,      849, 0x94dc99c7, F=0x2, S=1,        1
-0,     151200,     154800,     3600,      753, 0xf4236cab, F=0x0, S=1,        1
-0,     154800,     172800,     3600,    25825, 0xd5464dee, S=1,        1
-0,     158400,     165600,     3600,     1206, 0x8ce84344, F=0x0, S=1,        1
-0,     162000,     162000,     3600,      867, 0x312fa07d, F=0x0, S=1,        1
-0,     165600,     169200,     3600,      719, 0x810666d1, F=0x0, S=1,        1
-0,     169200,     187200,     3600,     3786, 0xa96a6825, F=0x0, S=1,        1
-0,     172800,     180000,     3600,     1187, 0x77e649a2, F=0x0, S=1,        1
-0,     176400,     176400,     3600,      750, 0x86da6d2e, F=0x0, S=1,        1
-0,     180000,     183600,     3600,      815, 0xf09a9881, F=0x0, S=1,        1
-0,     183600,     201600,     3600,     5275, 0xee3450bb, F=0x0, S=1,        1
-0,     187200,     194400,     3600,     1352, 0x150a96e1, F=0x0, S=1,        1
-0,     190800,     190800,     3600,      877, 0x6062a120, F=0x0, S=1,        1
-0,     194400,     198000,     3600,      829, 0x5180988c, F=0x0, S=1,        1
-0,     198000,     216000,     3600,     4421, 0x623aad33, F=0x0, S=1,        1
-0,     201600,     208800,     3600,     1464, 0xd34dc851, F=0x0, S=1,        1
-0,     205200,     205200,     3600,      903, 0xf63bbed0, F=0x0, S=1,        1
-0,     208800,     212400,     3600,      717, 0xc17054b8, F=0x0, S=1,        1
-0,     212400,     230400,     3600,     4787, 0x75e9400e, F=0x0, S=1,        1
-0,     216000,     223200,     3600,     1435, 0xb01ccabb, F=0x0, S=1,        1
-0,     219600,     219600,     3600,      851, 0x54bda291, F=0x0, S=1,        1
-0,     223200,     226800,     3600,      809, 0x84e37fee, F=0x0, S=1,        1
-0,     226800,     244800,     3600,     4541, 0xd4e5c0de, F=0x0, S=1,        1
-0,     230400,     237600,     3600,     1545, 0x0099fc98, F=0x0, S=1,        1
-0,     234000,     234000,     3600,      929, 0xfd72d049, F=0x2, S=1,        1
-0,     237600,     241200,     3600,      829, 0xcfda9e96, F=0x0, S=1,        1
-0,     241200,     259200,     3600,    24220, 0x5ca21d71, S=1,        1
-0,     244800,     252000,     3600,     1422, 0xcde6cc34, F=0x0, S=1,        1
-0,     248400,     248400,     3600,      883, 0xedacbe25, F=0x0, S=1,        1
-0,     252000,     255600,     3600,      768, 0x89d774bc, F=0x0, S=1,        1
-0,     255600,     273600,     3600,     3802, 0xea1d70d4, F=0x0, S=1,        1
-0,     259200,     266400,     3600,     1284, 0x2c927097, F=0x0, S=1,        1
-0,     262800,     262800,     3600,      745, 0x81076a7f, F=0x0, S=1,        1
-0,     266400,     270000,     3600,      931, 0x3675dbfe, F=0x0, S=1,        1
-0,     270000,     288000,     3600,     4830, 0x7a807a68, F=0x0, S=1,        1
-0,     273600,     280800,     3600,     1446, 0x6224bc81, F=0x0, S=1,        1
-0,     277200,     277200,     3600,      833, 0x56f78ae2, F=0x0, S=1,        1
-0,     280800,     284400,     3600,      873, 0x9caeaf00, F=0x0, S=1,        1
-0,     284400,     302400,     3600,     5167, 0x1703151f, F=0x0, S=1,        1
-0,     288000,     295200,     3600,     1449, 0x0881b0d6, F=0x0, S=1,        1
-0,     291600,     291600,     3600,      866, 0x0bffa719, F=0x0, S=1,        1
-0,     295200,     298800,     3600,      874, 0xc243a65f, F=0x0, S=1,        1
-0,     298800,     316800,     3600,     5426, 0x7c899c30, F=0x0, S=1,        1
-0,     302400,     309600,     3600,     1574, 0x03b00f0d, F=0x0, S=1,        1
-0,     306000,     306000,     3600,      860, 0x65cea74e, F=0x0, S=1,        1
-0,     309600,     313200,     3600,      829, 0xffd795cd, F=0x0, S=1,        1
-0,     313200,     331200,     3600,     5352, 0x59997996, F=0x0, S=1,        1
-0,     316800,     324000,     3600,     1501, 0xb3b8f001, F=0x0, S=1,        1
-0,     320400,     320400,     3600,      941, 0x92b0cb18, F=0x2, S=1,        1
-0,     324000,     327600,     3600,      823, 0x3d548355, F=0x0, S=1,        1
-0,     327600,     345600,     3600,    24042, 0x441e94fb, S=1,        1
-0,     331200,     338400,     3600,     1582, 0x4f5d1049, F=0x0, S=1,        1
-0,     334800,     334800,     3600,      945, 0x4f3cc9e8, F=0x0, S=1,        1
-0,     338400,     342000,     3600,      815, 0x0ca790a4, F=0x0, S=1,        1
-0,     342000,     360000,     3600,     4425, 0x1db2a088, F=0x0, S=1,        1
-0,     345600,     352800,     3600,     1492, 0x881ce798, F=0x0, S=1,        1
-0,     349200,     349200,     3600,      905, 0xbdd9c278, F=0x0, S=1,        1
-0,     352800,     356400,     3600,      870, 0x64fbb0e1, F=0x0, S=1,        1
-0,     356400,     374400,     3600,     5194, 0x138b1e1d, F=0x0, S=1,        1
-0,     360000,     367200,     3600,     1483, 0xc5c9d717, F=0x0, S=1,        1
-0,     363600,     363600,     3600,      977, 0x3648d9fc, F=0x0, S=1,        1
-0,     367200,     370800,     3600,      834, 0x6c5d8969, F=0x0, S=1,        1
-0,     370800,     388800,     3600,     6956, 0x6a548e0b, F=0x0, S=1,        1
-0,     374400,     381600,     3600,     1187, 0x795f4163, F=0x0, S=1,        1
-0,     378000,     378000,     3600,      925, 0x92bfc2fb, F=0x0, S=1,        1
-0,     381600,     385200,     3600,      747, 0xea9978fc, F=0x0, S=1,        1
-0,     385200,     403200,     3600,     5005, 0xc558c189, F=0x0, S=1,        1
-0,     388800,     396000,     3600,      452, 0x7d92d9d8, F=0x0, S=1,        1
-0,     392400,     392400,     3600,      784, 0xfd597a5f, F=0x0, S=1,        1
-0,     396000,     399600,     3600,      199, 0x79b06355, F=0x0, S=1,        1
-0,     399600,     417600,     3600,     1862, 0x22a2a06c, F=0x0, S=1,        1
-0,     403200,     410400,     3600,      359, 0x11bdae52, F=0x0, S=1,        1
-0,     406800,     406800,     3600,      235, 0xbec26964, F=0x2, S=1,        1
-0,     410400,     414000,     3600,      221, 0x8380682c, F=0x0, S=1,        1
-0,     414000,     432000,     3600,    22588, 0xf0ecf072, S=1,        1
-0,     417600,     424800,     3600,      383, 0x4f3bb571, F=0x0, S=1,        1
-0,     421200,     421200,     3600,      257, 0x22e87802, F=0x0, S=1,        1
-0,     424800,     428400,     3600,      261, 0xdb988134, F=0x0, S=1,        1
-0,     428400,     435600,     3600,      156, 0xd2c3406c, F=0x0, S=1,        1
-0,     432000,     439200,     3600,      330, 0x150d9b60, F=0x0, S=1,        1
-0,     435600,     446400,     3600,      324, 0x558194ee, F=0x0, S=1,        1
-0,     439200,     442800,     3600,      191, 0x108e54d1, F=0x0, S=1,        1
+0,      -7200,          0,     3600,    22630, 0x9b109541, S=1,        1, 0x00e000e0
+0,      -3600,      14400,     3600,     4021, 0xbf7cdb02, F=0x0, S=1,        1, 0x00e000e0
+0,          0,       7200,     3600,     1096, 0x4f162690, F=0x0, S=1,        1, 0x00e000e0
+0,       3600,       3600,     3600,      687, 0x00394b95, F=0x0, S=1,        1, 0x00e000e0
+0,       7200,      10800,     3600,      445, 0x08c3d065, F=0x0, S=1,        1, 0x00e000e0
+0,      10800,      28800,     3600,     4212, 0x56d12b8f, F=0x0, S=1,        1, 0x00e000e0
+0,      14400,      21600,     3600,     1117, 0xd521260b, F=0x0, S=1,        1, 0x00e000e0
+0,      18000,      18000,     3600,      892, 0x4262bdbc, F=0x0, S=1,        1, 0x00e000e0
+0,      21600,      25200,     3600,      480, 0x3be1ef0b, F=0x0, S=1,        1, 0x00e000e0
+0,      25200,      43200,     3600,     4065, 0x40dee237, F=0x0, S=1,        1, 0x00e000e0
+0,      28800,      36000,     3600,      962, 0x31a4ceb1, F=0x0, S=1,        1, 0x00e000e0
+0,      32400,      32400,     3600,      651, 0xb2aa317a, F=0x0, S=1,        1, 0x00e000e0
+0,      36000,      39600,     3600,      543, 0x9c4e0024, F=0x0, S=1,        1, 0x00e000e0
+0,      39600,      57600,     3600,     4221, 0x77c23977, F=0x0, S=1,        1, 0x00e000e0
+0,      43200,      50400,     3600,     1040, 0x482cfa34, F=0x0, S=1,        1, 0x00e000e0
+0,      46800,      46800,     3600,      576, 0x2686136a, F=0x0, S=1,        1, 0x00e000e0
+0,      50400,      54000,     3600,      607, 0xc53c2339, F=0x0, S=1,        1, 0x00e000e0
+0,      54000,      72000,     3600,     4755, 0x2f642b58, F=0x0, S=1,        1, 0x00e000e0
+0,      57600,      64800,     3600,     1182, 0xbe1a4847, F=0x0, S=1,        1, 0x00e000e0
+0,      61200,      61200,     3600,      809, 0x8d948a4e, F=0x0, S=1,        1, 0x00e000e0
+0,      64800,      68400,     3600,      656, 0x4fa03c2b, F=0x0, S=1,        1, 0x00e000e0
+0,      68400,      86400,     3600,    26555, 0x5629b584, S=1,        1, 0x00e000e0
+0,      72000,      79200,     3600,     1141, 0x761b31e8, F=0x0, S=1,        1, 0x00e000e0
+0,      75600,      75600,     3600,      717, 0x57746351, F=0x0, S=1,        1, 0x00e000e0
+0,      79200,      82800,     3600,      693, 0x78b24263, F=0x0, S=1,        1, 0x00e000e0
+0,      82800,     100800,     3600,     3417, 0x560dbc89, F=0x0, S=1,        1, 0x00e000e0
+0,      86400,      93600,     3600,     1128, 0xc0f1383c, F=0x0, S=1,        1, 0x00e000e0
+0,      90000,      90000,     3600,      650, 0xc3ad485e, F=0x0, S=1,        1, 0x00e000e0
+0,      93600,      97200,     3600,      766, 0xd3e9757d, F=0x0, S=1,        1, 0x00e000e0
+0,      97200,     115200,     3600,     4268, 0xec1235b5, F=0x0, S=1,        1, 0x00e000e0
+0,     100800,     108000,     3600,     1119, 0x65f51fb7, F=0x0, S=1,        1, 0x00e000e0
+0,     104400,     104400,     3600,      766, 0x213b78d3, F=0x0, S=1,        1, 0x00e000e0
+0,     108000,     111600,     3600,      770, 0xa7537e6d, F=0x0, S=1,        1, 0x00e000e0
+0,     111600,     129600,     3600,     6349, 0xec225cf9, F=0x0, S=1,        1, 0x00e000e0
+0,     115200,     122400,     3600,     1188, 0x9dea396c, F=0x0, S=1,        1, 0x00e000e0
+0,     118800,     118800,     3600,      805, 0xdd9e88d0, F=0x0, S=1,        1, 0x00e000e0
+0,     122400,     126000,     3600,      752, 0x1f93730a, F=0x0, S=1,        1, 0x00e000e0
+0,     126000,     144000,     3600,     5502, 0x501bda5c, F=0x0, S=1,        1, 0x00e000e0
+0,     129600,     136800,     3600,     1240, 0x7e3661ea, F=0x0, S=1,        1, 0x00e000e0
+0,     133200,     133200,     3600,      830, 0xa8249f38, F=0x0, S=1,        1, 0x00e000e0
+0,     136800,     140400,     3600,      754, 0xab1c815e, F=0x0, S=1,        1, 0x00e000e0
+0,     140400,     158400,     3600,     5328, 0xd2c55ac6, F=0x0, S=1,        1, 0x00e000e0
+0,     144000,     151200,     3600,     1271, 0x46006870, F=0x0, S=1,        1, 0x00e000e0
+0,     147600,     147600,     3600,      849, 0x94dc99c7, F=0x2, S=1,        1, 0x00e000e0
+0,     151200,     154800,     3600,      753, 0xf4236cab, F=0x0, S=1,        1, 0x00e000e0
+0,     154800,     172800,     3600,    25825, 0xd5464dee, S=1,        1, 0x00e000e0
+0,     158400,     165600,     3600,     1206, 0x8ce84344, F=0x0, S=1,        1, 0x00e000e0
+0,     162000,     162000,     3600,      867, 0x312fa07d, F=0x0, S=1,        1, 0x00e000e0
+0,     165600,     169200,     3600,      719, 0x810666d1, F=0x0, S=1,        1, 0x00e000e0
+0,     169200,     187200,     3600,     3786, 0xa96a6825, F=0x0, S=1,        1, 0x00e000e0
+0,     172800,     180000,     3600,     1187, 0x77e649a2, F=0x0, S=1,        1, 0x00e000e0
+0,     176400,     176400,     3600,      750, 0x86da6d2e, F=0x0, S=1,        1, 0x00e000e0
+0,     180000,     183600,     3600,      815, 0xf09a9881, F=0x0, S=1,        1, 0x00e000e0
+0,     183600,     201600,     3600,     5275, 0xee3450bb, F=0x0, S=1,        1, 0x00e000e0
+0,     187200,     194400,     3600,     1352, 0x150a96e1, F=0x0, S=1,        1, 0x00e000e0
+0,     190800,     190800,     3600,      877, 0x6062a120, F=0x0, S=1,        1, 0x00e000e0
+0,     194400,     198000,     3600,      829, 0x5180988c, F=0x0, S=1,        1, 0x00e000e0
+0,     198000,     216000,     3600,     4421, 0x623aad33, F=0x0, S=1,        1, 0x00e000e0
+0,     201600,     208800,     3600,     1464, 0xd34dc851, F=0x0, S=1,        1, 0x00e000e0
+0,     205200,     205200,     3600,      903, 0xf63bbed0, F=0x0, S=1,        1, 0x00e000e0
+0,     208800,     212400,     3600,      717, 0xc17054b8, F=0x0, S=1,        1, 0x00e000e0
+0,     212400,     230400,     3600,     4787, 0x75e9400e, F=0x0, S=1,        1, 0x00e000e0
+0,     216000,     223200,     3600,     1435, 0xb01ccabb, F=0x0, S=1,        1, 0x00e000e0
+0,     219600,     219600,     3600,      851, 0x54bda291, F=0x0, S=1,        1, 0x00e000e0
+0,     223200,     226800,     3600,      809, 0x84e37fee, F=0x0, S=1,        1, 0x00e000e0
+0,     226800,     244800,     3600,     4541, 0xd4e5c0de, F=0x0, S=1,        1, 0x00e000e0
+0,     230400,     237600,     3600,     1545, 0x0099fc98, F=0x0, S=1,        1, 0x00e000e0
+0,     234000,     234000,     3600,      929, 0xfd72d049, F=0x2, S=1,        1, 0x00e000e0
+0,     237600,     241200,     3600,      829, 0xcfda9e96, F=0x0, S=1,        1, 0x00e000e0
+0,     241200,     259200,     3600,    24220, 0x5ca21d71, S=1,        1, 0x00e000e0
+0,     244800,     252000,     3600,     1422, 0xcde6cc34, F=0x0, S=1,        1, 0x00e000e0
+0,     248400,     248400,     3600,      883, 0xedacbe25, F=0x0, S=1,        1, 0x00e000e0
+0,     252000,     255600,     3600,      768, 0x89d774bc, F=0x0, S=1,        1, 0x00e000e0
+0,     255600,     273600,     3600,     3802, 0xea1d70d4, F=0x0, S=1,        1, 0x00e000e0
+0,     259200,     266400,     3600,     1284, 0x2c927097, F=0x0, S=1,        1, 0x00e000e0
+0,     262800,     262800,     3600,      745, 0x81076a7f, F=0x0, S=1,        1, 0x00e000e0
+0,     266400,     270000,     3600,      931, 0x3675dbfe, F=0x0, S=1,        1, 0x00e000e0
+0,     270000,     288000,     3600,     4830, 0x7a807a68, F=0x0, S=1,        1, 0x00e000e0
+0,     273600,     280800,     3600,     1446, 0x6224bc81, F=0x0, S=1,        1, 0x00e000e0
+0,     277200,     277200,     3600,      833, 0x56f78ae2, F=0x0, S=1,        1, 0x00e000e0
+0,     280800,     284400,     3600,      873, 0x9caeaf00, F=0x0, S=1,        1, 0x00e000e0
+0,     284400,     302400,     3600,     5167, 0x1703151f, F=0x0, S=1,        1, 0x00e000e0
+0,     288000,     295200,     3600,     1449, 0x0881b0d6, F=0x0, S=1,        1, 0x00e000e0
+0,     291600,     291600,     3600,      866, 0x0bffa719, F=0x0, S=1,        1, 0x00e000e0
+0,     295200,     298800,     3600,      874, 0xc243a65f, F=0x0, S=1,        1, 0x00e000e0
+0,     298800,     316800,     3600,     5426, 0x7c899c30, F=0x0, S=1,        1, 0x00e000e0
+0,     302400,     309600,     3600,     1574, 0x03b00f0d, F=0x0, S=1,        1, 0x00e000e0
+0,     306000,     306000,     3600,      860, 0x65cea74e, F=0x0, S=1,        1, 0x00e000e0
+0,     309600,     313200,     3600,      829, 0xffd795cd, F=0x0, S=1,        1, 0x00e000e0
+0,     313200,     331200,     3600,     5352, 0x59997996, F=0x0, S=1,        1, 0x00e000e0
+0,     316800,     324000,     3600,     1501, 0xb3b8f001, F=0x0, S=1,        1, 0x00e000e0
+0,     320400,     320400,     3600,      941, 0x92b0cb18, F=0x2, S=1,        1, 0x00e000e0
+0,     324000,     327600,     3600,      823, 0x3d548355, F=0x0, S=1,        1, 0x00e000e0
+0,     327600,     345600,     3600,    24042, 0x441e94fb, S=1,        1, 0x00e000e0
+0,     331200,     338400,     3600,     1582, 0x4f5d1049, F=0x0, S=1,        1, 0x00e000e0
+0,     334800,     334800,     3600,      945, 0x4f3cc9e8, F=0x0, S=1,        1, 0x00e000e0
+0,     338400,     342000,     3600,      815, 0x0ca790a4, F=0x0, S=1,        1, 0x00e000e0
+0,     342000,     360000,     3600,     4425, 0x1db2a088, F=0x0, S=1,        1, 0x00e000e0
+0,     345600,     352800,     3600,     1492, 0x881ce798, F=0x0, S=1,        1, 0x00e000e0
+0,     349200,     349200,     3600,      905, 0xbdd9c278, F=0x0, S=1,        1, 0x00e000e0
+0,     352800,     356400,     3600,      870, 0x64fbb0e1, F=0x0, S=1,        1, 0x00e000e0
+0,     356400,     374400,     3600,     5194, 0x138b1e1d, F=0x0, S=1,        1, 0x00e000e0
+0,     360000,     367200,     3600,     1483, 0xc5c9d717, F=0x0, S=1,        1, 0x00e000e0
+0,     363600,     363600,     3600,      977, 0x3648d9fc, F=0x0, S=1,        1, 0x00e000e0
+0,     367200,     370800,     3600,      834, 0x6c5d8969, F=0x0, S=1,        1, 0x00e000e0
+0,     370800,     388800,     3600,     6956, 0x6a548e0b, F=0x0, S=1,        1, 0x00e000e0
+0,     374400,     381600,     3600,     1187, 0x795f4163, F=0x0, S=1,        1, 0x00e000e0
+0,     378000,     378000,     3600,      925, 0x92bfc2fb, F=0x0, S=1,        1, 0x00e000e0
+0,     381600,     385200,     3600,      747, 0xea9978fc, F=0x0, S=1,        1, 0x00e000e0
+0,     385200,     403200,     3600,     5005, 0xc558c189, F=0x0, S=1,        1, 0x00e000e0
+0,     388800,     396000,     3600,      452, 0x7d92d9d8, F=0x0, S=1,        1, 0x00e000e0
+0,     392400,     392400,     3600,      784, 0xfd597a5f, F=0x0, S=1,        1, 0x00e000e0
+0,     396000,     399600,     3600,      199, 0x79b06355, F=0x0, S=1,        1, 0x00e000e0
+0,     399600,     417600,     3600,     1862, 0x22a2a06c, F=0x0, S=1,        1, 0x00e000e0
+0,     403200,     410400,     3600,      359, 0x11bdae52, F=0x0, S=1,        1, 0x00e000e0
+0,     406800,     406800,     3600,      235, 0xbec26964, F=0x2, S=1,        1, 0x00e000e0
+0,     410400,     414000,     3600,      221, 0x8380682c, F=0x0, S=1,        1, 0x00e000e0
+0,     414000,     432000,     3600,    22588, 0xf0ecf072, S=1,        1, 0x00e000e0
+0,     417600,     424800,     3600,      383, 0x4f3bb571, F=0x0, S=1,        1, 0x00e000e0
+0,     421200,     421200,     3600,      257, 0x22e87802, F=0x0, S=1,        1, 0x00e000e0
+0,     424800,     428400,     3600,      261, 0xdb988134, F=0x0, S=1,        1, 0x00e000e0
+0,     428400,     435600,     3600,      156, 0xd2c3406c, F=0x0, S=1,        1, 0x00e000e0
+0,     432000,     439200,     3600,      330, 0x150d9b60, F=0x0, S=1,        1, 0x00e000e0
+0,     435600,     446400,     3600,      324, 0x558194ee, F=0x0, S=1,        1, 0x00e000e0
+0,     439200,     442800,     3600,      191, 0x108e54d1, F=0x0, S=1,        1, 0x00e000e0
 0,     442800,     450000,     3600,      233, 0xac5b6486, F=0x0
diff --git a/tests/ref/fate/shortest b/tests/ref/fate/shortest
index 0690799d8db..c8e594df626 100644
--- a/tests/ref/fate/shortest
+++ b/tests/ref/fate/shortest
@@ -9,109 +9,109 @@ 
 #sample_rate 1: 44100
 #channel_layout_name 1: mono
 1,       -256,       -256,     1536,      416, 0x69efcbcc
-0,          0,          0,        1,    27867, 0x1426a0d6, S=1,        8
+0,          0,          0,        1,    27867, 0x1426a0d6, S=1,        8, 0x050000a1
 1,       1280,       1280,     1536,      418, 0xa0ccc09d
-0,          1,          1,        1,     9806, 0xbebc2826, F=0x0, S=1,        8
+0,          1,          1,        1,     9806, 0xbebc2826, F=0x0, S=1,        8, 0x050400a2
 1,       2816,       2816,     1536,      418, 0xb873cb60
-0,          2,          2,        1,    10453, 0x4a188450, F=0x0, S=1,        8
+0,          2,          2,        1,    10453, 0x4a188450, F=0x0, S=1,        8, 0x050400a2
 1,       4352,       4352,     1536,      418, 0x1366c008
-0,          3,          3,        1,    10248, 0x4c831c08, F=0x0, S=1,        8
+0,          3,          3,        1,    10248, 0x4c831c08, F=0x0, S=1,        8, 0x050400a2
 1,       5888,       5888,     1536,      418, 0xeb24c8da
-0,          4,          4,        1,    11680, 0x5508c44d, F=0x0, S=1,        8
+0,          4,          4,        1,    11680, 0x5508c44d, F=0x0, S=1,        8, 0x050400a2
 1,       7424,       7424,     1536,      418, 0xc75ac55e
-0,          5,          5,        1,    11046, 0x096ca433, F=0x0, S=1,        8
+0,          5,          5,        1,    11046, 0x096ca433, F=0x0, S=1,        8, 0x050400a2
 1,       8960,       8960,     1536,      418, 0xe336d28d
 1,      10496,      10496,     1536,      418, 0xd0acc452
-0,          6,          6,        1,     9888, 0x440a5b45, F=0x0, S=1,        8
+0,          6,          6,        1,     9888, 0x440a5b45, F=0x0, S=1,        8, 0x050400a2
 1,      12032,      12032,     1536,      418, 0xae88c75f
-0,          7,          7,        1,    10165, 0x116d4909, F=0x0, S=1,        8
+0,          7,          7,        1,    10165, 0x116d4909, F=0x0, S=1,        8, 0x050400a2
 1,      13568,      13568,     1536,      418, 0xa200b8f0
-0,          8,          8,        1,    11704, 0xb334a24c, F=0x0, S=1,        8
+0,          8,          8,        1,    11704, 0xb334a24c, F=0x0, S=1,        8, 0x050400a2
 1,      15104,      15104,     1536,      418, 0x009dccf6
-0,          9,          9,        1,    11059, 0x49aa6515, F=0x0, S=1,        8
+0,          9,          9,        1,    11059, 0x49aa6515, F=0x0, S=1,        8, 0x050400a2
 1,      16640,      16640,     1536,      418, 0x585ec129
-0,         10,         10,        1,     8764, 0x8214fab0, F=0x0, S=1,        8
+0,         10,         10,        1,     8764, 0x8214fab0, F=0x0, S=1,        8, 0x050400a2
 1,      18176,      18176,     1536,      418, 0xda1acf75
-0,         11,         11,        1,     9328, 0x92987740, F=0x0, S=1,        8
+0,         11,         11,        1,     9328, 0x92987740, F=0x0, S=1,        8, 0x050400a2
 1,      19712,      19712,     1536,      418, 0xd326d279
-0,         12,         12,        1,    27955, 0xe25edb6c, S=1,        8
+0,         12,         12,        1,    27955, 0xe25edb6c, S=1,        8, 0x050000a1
 1,      21248,      21248,     1536,      418, 0x1b54bf76
 1,      22784,      22784,     1536,      418, 0xdb39cbd1
-0,         13,         13,        1,    11181, 0x3cf56687, F=0x0, S=1,        8
+0,         13,         13,        1,    11181, 0x3cf56687, F=0x0, S=1,        8, 0x050400a2
 1,      24320,      24320,     1536,      418, 0x6813cefa
-0,         14,         14,        1,    12002, 0x87942530, F=0x0, S=1,        8
+0,         14,         14,        1,    12002, 0x87942530, F=0x0, S=1,        8, 0x050400a2
 1,      25856,      25856,     1536,      418, 0xb402d2ec
-0,         15,         15,        1,    10122, 0xbb10e8d9, F=0x0, S=1,        8
+0,         15,         15,        1,    10122, 0xbb10e8d9, F=0x0, S=1,        8, 0x050400a2
 1,      27392,      27392,     1536,      418, 0x80c4c8d2
-0,         16,         16,        1,     9715, 0xa4a1325c, F=0x0, S=1,        8
+0,         16,         16,        1,     9715, 0xa4a1325c, F=0x0, S=1,        8, 0x050400a2
 1,      28928,      28928,     1536,      418, 0xaeaac123
-0,         17,         17,        1,    11222, 0x15118a48, F=0x0, S=1,        8
+0,         17,         17,        1,    11222, 0x15118a48, F=0x0, S=1,        8, 0x050400a2
 1,      30464,      30464,     1536,      418, 0xe2c9c038
-0,         18,         18,        1,    11384, 0xd4304391, F=0x0, S=1,        8
+0,         18,         18,        1,    11384, 0xd4304391, F=0x0, S=1,        8, 0x050400a2
 1,      32000,      32000,     1536,      418, 0x3f37c65b
-0,         19,         19,        1,     9141, 0xabd1eb90, F=0x0, S=1,        8
+0,         19,         19,        1,     9141, 0xabd1eb90, F=0x0, S=1,        8, 0x050400a2
 1,      33536,      33536,     1536,      418, 0xf9a2cf98
 1,      35072,      35072,     1536,      418, 0xc951cbb5
-0,         20,         20,        1,    10049, 0x5b388bc2, F=0x0, S=1,        8
+0,         20,         20,        1,    10049, 0x5b388bc2, F=0x0, S=1,        8, 0x050400a2
 1,      36608,      36608,     1536,      418, 0x4e92be94
-0,         21,         21,        1,     9049, 0x214505c3, F=0x0, S=1,        8
+0,         21,         21,        1,     9049, 0x214505c3, F=0x0, S=1,        8, 0x050400a2
 1,      38144,      38144,     1536,      418, 0xa9d8c8d0
-0,         22,         22,        1,     9101, 0xdba6e5ba, F=0x0, S=1,        8
+0,         22,         22,        1,     9101, 0xdba6e5ba, F=0x0, S=1,        8, 0x050400a2
 1,      39680,      39680,     1536,      418, 0xe4c8bc20
-0,         23,         23,        1,    10351, 0x0aea5644, F=0x0, S=1,        8
+0,         23,         23,        1,    10351, 0x0aea5644, F=0x0, S=1,        8, 0x050400a2
 1,      41216,      41216,     1536,      418, 0x2ccac571
-0,         24,         24,        1,    27864, 0xd0287877, S=1,        8
+0,         24,         24,        1,    27864, 0xd0287877, S=1,        8, 0x050000a1
 1,      42752,      42752,     1536,      418, 0xd2a0cbff
-0,         25,         25,        1,     9026, 0x01ec7d47, F=0x0, S=1,        8
+0,         25,         25,        1,     9026, 0x01ec7d47, F=0x0, S=1,        8, 0x050400a2
 1,      44288,      44288,     1536,      418, 0xffadb489
 1,      45824,      45824,     1536,      418, 0x1246cae7
-0,         26,         26,        1,     8894, 0x5917d83b, F=0x0, S=1,        8
+0,         26,         26,        1,     8894, 0x5917d83b, F=0x0, S=1,        8, 0x050400a2
 1,      47360,      47360,     1536,      418, 0xa74eb1f7
-0,         27,         27,        1,    10119, 0x3a2ede3a, F=0x0, S=1,        8
+0,         27,         27,        1,    10119, 0x3a2ede3a, F=0x0, S=1,        8, 0x050400a2
 1,      48896,      48896,     1536,      418, 0x98cfc032
-0,         28,         28,        1,    10290, 0xea641449, F=0x0, S=1,        8
+0,         28,         28,        1,    10290, 0xea641449, F=0x0, S=1,        8, 0x050400a2
 1,      50432,      50432,     1536,      418, 0x8045c0a7
-0,         29,         29,        1,    10922, 0xeb7e9700, F=0x0, S=1,        8
+0,         29,         29,        1,    10922, 0xeb7e9700, F=0x0, S=1,        8, 0x050400a2
 1,      51968,      51968,     1536,      418, 0x2180c196
-0,         30,         30,        1,     9680, 0x929d1f59, F=0x0, S=1,        8
+0,         30,         30,        1,     9680, 0x929d1f59, F=0x0, S=1,        8, 0x050400a2
 1,      53504,      53504,     1536,      418, 0x35f2b4d1
-0,         31,         31,        1,     8733, 0x8fa8fc4e, F=0x0, S=1,        8
+0,         31,         31,        1,     8733, 0x8fa8fc4e, F=0x0, S=1,        8, 0x050400a2
 1,      55040,      55040,     1536,      418, 0x876ec74d
-0,         32,         32,        1,     9878, 0xe3f555e9, F=0x0, S=1,        8
+0,         32,         32,        1,     9878, 0xe3f555e9, F=0x0, S=1,        8, 0x050400a2
 1,      56576,      56576,     1536,      418, 0xbccebddd
 1,      58112,      58112,     1536,      418, 0x40a1bcc7
-0,         33,         33,        1,    10926, 0x2a2bed74, F=0x0, S=1,        8
+0,         33,         33,        1,    10926, 0x2a2bed74, F=0x0, S=1,        8, 0x050400a2
 1,      59648,      59648,     1536,      418, 0xbd10bf09
-0,         34,         34,        1,    12170, 0x70c8ab23, F=0x0, S=1,        8
+0,         34,         34,        1,    12170, 0x70c8ab23, F=0x0, S=1,        8, 0x050400a2
 1,      61184,      61184,     1536,      418, 0xb8e4b630
-0,         35,         35,        1,    11631, 0x7d5e8297, F=0x0, S=1,        8
+0,         35,         35,        1,    11631, 0x7d5e8297, F=0x0, S=1,        8, 0x050400a2
 1,      62720,      62720,     1536,      418, 0xc667bd39
-0,         36,         36,        1,    28056, 0x10bef294, S=1,        8
+0,         36,         36,        1,    28056, 0x10bef294, S=1,        8, 0x050000a1
 1,      64256,      64256,     1536,      418, 0x2985c4ac
-0,         37,         37,        1,    11067, 0x490af43b, F=0x0, S=1,        8
+0,         37,         37,        1,    11067, 0x490af43b, F=0x0, S=1,        8, 0x050400a2
 1,      65792,      65792,     1536,      418, 0xb229b697
-0,         38,         38,        1,    11046, 0x6dba2441, F=0x0, S=1,        8
+0,         38,         38,        1,    11046, 0x6dba2441, F=0x0, S=1,        8, 0x050400a2
 1,      67328,      67328,     1536,      418, 0xd2eec6d8
-0,         39,         39,        1,    10922, 0x069cfa74, F=0x0, S=1,        8
+0,         39,         39,        1,    10922, 0x069cfa74, F=0x0, S=1,        8, 0x050400a2
 1,      68864,      68864,     1536,      418, 0x74a9c1a9
 1,      70400,      70400,     1536,      418, 0x2d1cc383
-0,         40,         40,        1,    11477, 0x18baebc1, F=0x0, S=1,        8
+0,         40,         40,        1,    11477, 0x18baebc1, F=0x0, S=1,        8, 0x050400a2
 1,      71936,      71936,     1536,      418, 0x0ad9c88a
-0,         41,         41,        1,    10285, 0x792623a6, F=0x0, S=1,        8
+0,         41,         41,        1,    10285, 0x792623a6, F=0x0, S=1,        8, 0x050400a2
 1,      73472,      73472,     1536,      418, 0x9aa3d0a7
-0,         42,         42,        1,     9961, 0x69d8a3b1, F=0x0, S=1,        8
+0,         42,         42,        1,     9961, 0x69d8a3b1, F=0x0, S=1,        8, 0x050400a2
 1,      75008,      75008,     1536,      416, 0x99f5b2b6
-0,         43,         43,        1,    11162, 0x6f3788c6, F=0x0, S=1,        8
+0,         43,         43,        1,    11162, 0x6f3788c6, F=0x0, S=1,        8, 0x050400a2
 1,      76544,      76544,     1536,      418, 0xfb7dc20d
-0,         44,         44,        1,    10696, 0x524ad4f8, F=0x0, S=1,        8
+0,         44,         44,        1,    10696, 0x524ad4f8, F=0x0, S=1,        8, 0x050400a2
 1,      78080,      78080,     1536,      418, 0xebc8c568
-0,         45,         45,        1,    10319, 0x9d6ff8f7, F=0x0, S=1,        8
+0,         45,         45,        1,    10319, 0x9d6ff8f7, F=0x0, S=1,        8, 0x050400a2
 1,      79616,      79616,     1536,      418, 0x7361c949
-0,         46,         46,        1,     8796, 0xb0cc869e, F=0x0, S=1,        8
+0,         46,         46,        1,     8796, 0xb0cc869e, F=0x0, S=1,        8, 0x050400a2
 1,      81152,      81152,     1536,      418, 0x85d8bbd0
 1,      82688,      82688,     1536,      418, 0x72e8bad1
-0,         47,         47,        1,     8779, 0x2027399c, F=0x0, S=1,        8
+0,         47,         47,        1,     8779, 0x2027399c, F=0x0, S=1,        8, 0x050400a2
 1,      84224,      84224,     1536,      418, 0x4febb56f
-0,         48,         48,        1,    28143, 0x1df268c5, S=1,        8
+0,         48,         48,        1,    28143, 0x1df268c5, S=1,        8, 0x050000a1
 1,      85760,      85760,     1536,      418, 0xae06ca91
-0,         49,         49,        1,    10073, 0xedb9f031, F=0x0, S=1,        8
+0,         49,         49,        1,    10073, 0xedb9f031, F=0x0, S=1,        8, 0x050400a2
diff --git a/tests/ref/fate/webm-hdr10-plus-remux b/tests/ref/fate/webm-hdr10-plus-remux
index 04ab55e56fa..75fa76fd641 100644
--- a/tests/ref/fate/webm-hdr10-plus-remux
+++ b/tests/ref/fate/webm-hdr10-plus-remux
@@ -5,7 +5,7 @@ 
 #codec_id 0: vp9
 #dimensions 0: 1280x720
 #sar 0: 1/1
-0,          0,          0,       40,    13350, 0x5f64e443, S=1,    11304
+0,          0,          0,       40,    13350, 0x5f64e443, S=1,    11304, 0xf822276d
 [PACKET]
 codec_type=video
 stream_index=0
diff --git a/tests/ref/fate/webm-webvtt-remux b/tests/ref/fate/webm-webvtt-remux
index 3775926909a..61d621c4117 100644
--- a/tests/ref/fate/webm-webvtt-remux
+++ b/tests/ref/fate/webm-webvtt-remux
@@ -16,20 +16,20 @@  c372c76c062d368f1d17373c19f83579 *tests/data/fate/webm-webvtt-remux.webm
 1,      18000,      18000,     2000,       51, 0xc84211f5
 0,      20000,      20000,     2000,       67, 0x3e2918c7
 1,      20000,      20000,     2000,       67, 0x3e2918c7
-0,      22000,      22000,     2000,       29, 0x93f7098d, S=1,        3
-1,      22000,      22000,     2000,       29, 0x93f7098d, S=1,        3
+0,      22000,      22000,     2000,       29, 0x93f7098d, S=1,        3, 0x012a0096
+1,      22000,      22000,     2000,       29, 0x93f7098d, S=1,        3, 0x012a0096
 0,      24000,      24000,     2000,       49, 0xb2d91196
 1,      24000,      24000,     2000,       49, 0xb2d91196
-0,      27000,      27000,     3000,       99, 0xb750231a, S=1,       14
-1,      27000,      27000,     3000,       99, 0xb750231a, S=1,       14
-0,      30000,      30000,     1500,       36, 0xe7f70d87, S=1,       18
-1,      30000,      30000,     1500,       36, 0xe7f70d87, S=1,       18
-0,      30500,      30500,     2000,      112, 0x6961267d, S=1,       20
-1,      30500,      30500,     2000,      112, 0x6961267d, S=1,       20
-0,      32000,      32000,     3500,       58, 0x32d11382, S=1,       18
-1,      32000,      32000,     3500,       58, 0x32d11382, S=1,       18
-0,      32500,      32500,     1000,       36, 0xe6650c7c, S=1,       20
-1,      32500,      32500,     1000,       36, 0xe6650c7c, S=1,       20
+0,      27000,      27000,     3000,       99, 0xb750231a, S=1,       14, 0x292a0588
+1,      27000,      27000,     3000,       99, 0xb750231a, S=1,       14, 0x292a0588
+0,      30000,      30000,     1500,       36, 0xe7f70d87, S=1,       18, 0x3f63061b
+1,      30000,      30000,     1500,       36, 0xe7f70d87, S=1,       18, 0x3f63061b
+0,      30500,      30500,     2000,      112, 0x6961267d, S=1,       20, 0x50b70712
+1,      30500,      30500,     2000,      112, 0x6961267d, S=1,       20, 0x50b70712
+0,      32000,      32000,     3500,       58, 0x32d11382, S=1,       18, 0x3f63061b
+1,      32000,      32000,     3500,       58, 0x32d11382, S=1,       18, 0x3f63061b
+0,      32500,      32500,     1000,       36, 0xe6650c7c, S=1,       20, 0x47000712
+1,      32500,      32500,     1000,       36, 0xe6650c7c, S=1,       20, 0x47000712
 0,      35500,      35500,     2500,       73, 0xb13f19c0
 1,      35500,      35500,     2500,       73, 0xb13f19c0
 0,      50000,      50000,     1134,       43, 0x534b0ee3