Merge remote-tracking branch 'qatar/release/9' into release/1.1
* qatar/release/9: fate: update ref after rv30_loop_filter fix rv30: fix masking in rv30_loop_filter() libcdio: support recent cdio-paranoia theora: Skip zero-sized headers h264: add 3 pixels below for subpixel filter wait position h264: fix ff_generate_sliding_window_mmcos() prototype. h264: don't clobber mmco opcode tables for non-first slice headers. Conflicts: configure libavcodec/h264_refs.c tests/ref/fate/filter-delogo tests/ref/fate/rv30 Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
6
configure
vendored
6
configure
vendored
@@ -1343,6 +1343,8 @@ HAVE_LIST="
|
|||||||
asm_types_h
|
asm_types_h
|
||||||
attribute_may_alias
|
attribute_may_alias
|
||||||
attribute_packed
|
attribute_packed
|
||||||
|
cdio_paranoia_h
|
||||||
|
cdio_paranoia_paranoia_h
|
||||||
clock_gettime
|
clock_gettime
|
||||||
closesocket
|
closesocket
|
||||||
cmov
|
cmov
|
||||||
@@ -3817,7 +3819,6 @@ enabled libiec61883 && require libiec61883 libiec61883/iec61883.h iec61883_cmp_c
|
|||||||
enabled libaacplus && require "libaacplus >= 2.0.0" aacplus.h aacplusEncOpen -laacplus
|
enabled libaacplus && require "libaacplus >= 2.0.0" aacplus.h aacplusEncOpen -laacplus
|
||||||
enabled libass && require_pkg_config libass ass/ass.h ass_library_init
|
enabled libass && require_pkg_config libass ass/ass.h ass_library_init
|
||||||
enabled libbluray && require libbluray libbluray/bluray.h bd_open -lbluray
|
enabled libbluray && require libbluray libbluray/bluray.h bd_open -lbluray
|
||||||
enabled libcdio && require2 libcdio "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio
|
|
||||||
enabled libcelt && require libcelt celt/celt.h celt_decode -lcelt0 &&
|
enabled libcelt && require libcelt celt/celt.h celt_decode -lcelt0 &&
|
||||||
{ check_lib celt/celt.h celt_decoder_create_custom -lcelt0 ||
|
{ check_lib celt/celt.h celt_decoder_create_custom -lcelt0 ||
|
||||||
die "ERROR: libcelt must be installed and version must be >= 0.11.0."; }
|
die "ERROR: libcelt must be installed and version must be >= 0.11.0."; }
|
||||||
@@ -3954,6 +3955,9 @@ enabled jack_indev && check_lib2 jack/jack.h jack_client_open -ljack && check_fu
|
|||||||
|
|
||||||
enabled_any sndio_indev sndio_outdev && check_lib2 sndio.h sio_open -lsndio
|
enabled_any sndio_indev sndio_outdev && check_lib2 sndio.h sio_open -lsndio
|
||||||
|
|
||||||
|
if enabled libcdio; then
|
||||||
|
check_lib2 "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio || check_lib2 "cdio/paranoia/cdda.h cdio/paranoia/paranoia.h" cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio
|
||||||
|
fi
|
||||||
|
|
||||||
enabled x11grab &&
|
enabled x11grab &&
|
||||||
require X11 X11/Xlib.h XOpenDisplay -lX11 &&
|
require X11 X11/Xlib.h XOpenDisplay -lX11 &&
|
||||||
|
@@ -309,10 +309,11 @@ static inline int get_lowest_part_list_y(H264Context *h, Picture *pic, int n,
|
|||||||
int height, int y_offset, int list)
|
int height, int y_offset, int list)
|
||||||
{
|
{
|
||||||
int raw_my = h->mv_cache[list][scan8[n]][1];
|
int raw_my = h->mv_cache[list][scan8[n]][1];
|
||||||
int filter_height = (raw_my & 3) ? 2 : 0;
|
int filter_height_up = (raw_my & 3) ? 2 : 0;
|
||||||
|
int filter_height_down = (raw_my & 3) ? 3 : 0;
|
||||||
int full_my = (raw_my >> 2) + y_offset;
|
int full_my = (raw_my >> 2) + y_offset;
|
||||||
int top = full_my - filter_height;
|
int top = full_my - filter_height_up;
|
||||||
int bottom = full_my + filter_height + height;
|
int bottom = full_my + filter_height_down + height;
|
||||||
|
|
||||||
return FFMAX(abs(top), bottom);
|
return FFMAX(abs(top), bottom);
|
||||||
}
|
}
|
||||||
@@ -2973,7 +2974,9 @@ static int decode_slice_header(H264Context *h, H264Context *h0)
|
|||||||
s->current_picture_ptr->frame_num = h->prev_frame_num;
|
s->current_picture_ptr->frame_num = h->prev_frame_num;
|
||||||
ff_thread_report_progress(&s->current_picture_ptr->f, INT_MAX, 0);
|
ff_thread_report_progress(&s->current_picture_ptr->f, INT_MAX, 0);
|
||||||
ff_thread_report_progress(&s->current_picture_ptr->f, INT_MAX, 1);
|
ff_thread_report_progress(&s->current_picture_ptr->f, INT_MAX, 1);
|
||||||
ff_generate_sliding_window_mmcos(h);
|
if ((ret = ff_generate_sliding_window_mmcos(h, 1)) < 0 &&
|
||||||
|
s->avctx->err_recognition & AV_EF_EXPLODE)
|
||||||
|
return ret;
|
||||||
if (ff_h264_execute_ref_pic_marking(h, h->mmco, h->mmco_index) < 0 &&
|
if (ff_h264_execute_ref_pic_marking(h, h->mmco, h->mmco_index) < 0 &&
|
||||||
(s->avctx->err_recognition & AV_EF_EXPLODE))
|
(s->avctx->err_recognition & AV_EF_EXPLODE))
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
@@ -3152,7 +3155,15 @@ static int decode_slice_header(H264Context *h, H264Context *h0)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (h->nal_ref_idc && ff_h264_decode_ref_pic_marking(h0, &s->gb) < 0 &&
|
// If frame-mt is enabled, only update mmco tables for the first slice
|
||||||
|
// in a field. Subsequent slices can temporarily clobber h->mmco_index
|
||||||
|
// or h->mmco, which will cause ref list mix-ups and decoding errors
|
||||||
|
// further down the line. This may break decoding if the first slice is
|
||||||
|
// corrupt, thus we only do this if frame-mt is enabled.
|
||||||
|
if (h->nal_ref_idc &&
|
||||||
|
ff_h264_decode_ref_pic_marking(h0, &s->gb,
|
||||||
|
!(s->avctx->active_thread_type & FF_THREAD_FRAME) ||
|
||||||
|
h0->current_slice == 0) < 0 &&
|
||||||
(s->avctx->err_recognition & AV_EF_EXPLODE))
|
(s->avctx->err_recognition & AV_EF_EXPLODE))
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
|
|
||||||
|
@@ -669,9 +669,10 @@ void ff_h264_remove_all_refs(H264Context *h);
|
|||||||
*/
|
*/
|
||||||
int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count);
|
int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count);
|
||||||
|
|
||||||
int ff_h264_decode_ref_pic_marking(H264Context *h, GetBitContext *gb);
|
int ff_h264_decode_ref_pic_marking(H264Context *h, GetBitContext *gb,
|
||||||
|
int first_slice);
|
||||||
|
|
||||||
void ff_generate_sliding_window_mmcos(H264Context *h);
|
int ff_generate_sliding_window_mmcos(H264Context *h, int first_slice);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if the top & left blocks are available if needed & change the
|
* Check if the top & left blocks are available if needed & change the
|
||||||
|
@@ -480,22 +480,50 @@ static void print_long_term(H264Context *h) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ff_generate_sliding_window_mmcos(H264Context *h) {
|
static int check_opcodes(MMCO *mmco1, MMCO *mmco2, int n_mmcos)
|
||||||
MpegEncContext * const s = &h->s;
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
h->mmco_index= 0;
|
for (i = 0; i < n_mmcos; i++) {
|
||||||
if(h->short_ref_count && h->long_ref_count + h->short_ref_count >= h->sps.ref_frame_count &&
|
if (mmco1[i].opcode != mmco2[i].opcode)
|
||||||
!(FIELD_PICTURE && !s->first_field && s->current_picture_ptr->f.reference)) {
|
return -1;
|
||||||
h->mmco[0].opcode= MMCO_SHORT2UNUSED;
|
}
|
||||||
h->mmco[0].short_pic_num= h->short_ref[ h->short_ref_count - 1 ]->frame_num;
|
|
||||||
h->mmco_index= 1;
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int ff_generate_sliding_window_mmcos(H264Context *h, int first_slice)
|
||||||
|
{
|
||||||
|
MpegEncContext * const s = &h->s;
|
||||||
|
MMCO mmco_temp[MAX_MMCO_COUNT], *mmco = first_slice ? h->mmco : mmco_temp;
|
||||||
|
int mmco_index = 0, i;
|
||||||
|
|
||||||
|
if (h->short_ref_count &&
|
||||||
|
h->long_ref_count + h->short_ref_count >= h->sps.ref_frame_count &&
|
||||||
|
!(FIELD_PICTURE && !s->first_field &&
|
||||||
|
s->current_picture_ptr->f.reference)) {
|
||||||
|
mmco[0].opcode = MMCO_SHORT2UNUSED;
|
||||||
|
mmco[0].short_pic_num = h->short_ref[h->short_ref_count - 1]->frame_num;
|
||||||
|
mmco_index = 1;
|
||||||
if (FIELD_PICTURE) {
|
if (FIELD_PICTURE) {
|
||||||
h->mmco[0].short_pic_num *= 2;
|
mmco[0].short_pic_num *= 2;
|
||||||
h->mmco[1].opcode= MMCO_SHORT2UNUSED;
|
mmco[1].opcode = MMCO_SHORT2UNUSED;
|
||||||
h->mmco[1].short_pic_num= h->mmco[0].short_pic_num + 1;
|
mmco[1].short_pic_num = mmco[0].short_pic_num + 1;
|
||||||
h->mmco_index= 2;
|
mmco_index = 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (first_slice) {
|
||||||
|
h->mmco_index = mmco_index;
|
||||||
|
} else if (!first_slice && mmco_index >= 0 &&
|
||||||
|
(mmco_index != h->mmco_index ||
|
||||||
|
(i = check_opcodes(h->mmco, mmco_temp, mmco_index)))) {
|
||||||
|
av_log(h->s.avctx, AV_LOG_ERROR,
|
||||||
|
"Inconsistent MMCO state between slices [%d, %d, %d]\n",
|
||||||
|
mmco_index, h->mmco_index, i);
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count){
|
int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count){
|
||||||
@@ -665,52 +693,86 @@ int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count){
|
|||||||
return (h->s.avctx->err_recognition & AV_EF_EXPLODE) ? err : 0;
|
return (h->s.avctx->err_recognition & AV_EF_EXPLODE) ? err : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int ff_h264_decode_ref_pic_marking(H264Context *h, GetBitContext *gb){
|
int ff_h264_decode_ref_pic_marking(H264Context *h, GetBitContext *gb,
|
||||||
|
int first_slice)
|
||||||
|
{
|
||||||
MpegEncContext * const s = &h->s;
|
MpegEncContext * const s = &h->s;
|
||||||
int i;
|
int i, ret;
|
||||||
|
MMCO mmco_temp[MAX_MMCO_COUNT], *mmco = first_slice ? h->mmco : mmco_temp;
|
||||||
|
int mmco_index = 0;
|
||||||
|
|
||||||
h->mmco_index= 0;
|
if (h->nal_unit_type == NAL_IDR_SLICE){ // FIXME fields
|
||||||
if(h->nal_unit_type == NAL_IDR_SLICE){ //FIXME fields
|
s->broken_link = get_bits1(gb) - 1;
|
||||||
s->broken_link= get_bits1(gb) -1;
|
if (get_bits1(gb)){
|
||||||
if(get_bits1(gb)){
|
mmco[0].opcode = MMCO_LONG;
|
||||||
h->mmco[0].opcode= MMCO_LONG;
|
mmco[0].long_arg = 0;
|
||||||
h->mmco[0].long_arg= 0;
|
mmco_index = 1;
|
||||||
h->mmco_index= 1;
|
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
if(get_bits1(gb)){ // adaptive_ref_pic_marking_mode_flag
|
if (get_bits1(gb)) { // adaptive_ref_pic_marking_mode_flag
|
||||||
for(i= 0; i<MAX_MMCO_COUNT; i++) {
|
for (i = 0; i < MAX_MMCO_COUNT; i++) {
|
||||||
MMCOOpcode opcode= get_ue_golomb_31(gb);
|
MMCOOpcode opcode = get_ue_golomb_31(gb);
|
||||||
|
|
||||||
h->mmco[i].opcode= opcode;
|
mmco[i].opcode = opcode;
|
||||||
if(opcode==MMCO_SHORT2UNUSED || opcode==MMCO_SHORT2LONG){
|
if (opcode == MMCO_SHORT2UNUSED || opcode == MMCO_SHORT2LONG){
|
||||||
h->mmco[i].short_pic_num= (h->curr_pic_num - get_ue_golomb(gb) - 1) & (h->max_pic_num - 1);
|
mmco[i].short_pic_num =
|
||||||
/* if(h->mmco[i].short_pic_num >= h->short_ref_count || h->short_ref[ h->mmco[i].short_pic_num ] == NULL){
|
(h->curr_pic_num - get_ue_golomb(gb) - 1) &
|
||||||
av_log(s->avctx, AV_LOG_ERROR, "illegal short ref in memory management control operation %d\n", mmco);
|
(h->max_pic_num - 1);
|
||||||
return -1;
|
#if 0
|
||||||
}*/
|
if (mmco[i].short_pic_num >= h->short_ref_count ||
|
||||||
}
|
h->short_ref[ mmco[i].short_pic_num ] == NULL){
|
||||||
if(opcode==MMCO_SHORT2LONG || opcode==MMCO_LONG2UNUSED || opcode==MMCO_LONG || opcode==MMCO_SET_MAX_LONG){
|
av_log(s->avctx, AV_LOG_ERROR,
|
||||||
unsigned int long_arg= get_ue_golomb_31(gb);
|
"illegal short ref in memory management control "
|
||||||
if(long_arg >= 32 || (long_arg >= 16 && !(opcode == MMCO_SET_MAX_LONG && long_arg == 16) && !(opcode == MMCO_LONG2UNUSED && FIELD_PICTURE))){
|
"operation %d\n", mmco);
|
||||||
av_log(h->s.avctx, AV_LOG_ERROR, "illegal long ref in memory management control operation %d\n", opcode);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
h->mmco[i].long_arg= long_arg;
|
#endif
|
||||||
|
}
|
||||||
|
if (opcode == MMCO_SHORT2LONG || opcode == MMCO_LONG2UNUSED ||
|
||||||
|
opcode == MMCO_LONG || opcode == MMCO_SET_MAX_LONG) {
|
||||||
|
unsigned int long_arg = get_ue_golomb_31(gb);
|
||||||
|
if (long_arg >= 32 ||
|
||||||
|
(long_arg >= 16 && !(opcode == MMCO_SET_MAX_LONG &&
|
||||||
|
long_arg == 16) &&
|
||||||
|
!(opcode == MMCO_LONG2UNUSED && FIELD_PICTURE))){
|
||||||
|
av_log(h->s.avctx, AV_LOG_ERROR,
|
||||||
|
"illegal long ref in memory management control "
|
||||||
|
"operation %d\n", opcode);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
mmco[i].long_arg = long_arg;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(opcode > (unsigned)MMCO_LONG){
|
if (opcode > (unsigned) MMCO_LONG){
|
||||||
av_log(h->s.avctx, AV_LOG_ERROR, "illegal memory management control operation %d\n", opcode);
|
av_log(h->s.avctx, AV_LOG_ERROR,
|
||||||
|
"illegal memory management control operation %d\n",
|
||||||
|
opcode);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if(opcode == MMCO_END)
|
if (opcode == MMCO_END)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
h->mmco_index= i;
|
mmco_index = i;
|
||||||
}else{
|
} else {
|
||||||
ff_generate_sliding_window_mmcos(h);
|
if (first_slice) {
|
||||||
|
ret = ff_generate_sliding_window_mmcos(h, first_slice);
|
||||||
|
if (ret < 0 && s->avctx->err_recognition & AV_EF_EXPLODE)
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
mmco_index = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (first_slice && mmco_index != -1) {
|
||||||
|
h->mmco_index = mmco_index;
|
||||||
|
} else if (!first_slice && mmco_index >= 0 &&
|
||||||
|
(mmco_index != h->mmco_index ||
|
||||||
|
(i = check_opcodes(h->mmco, mmco_temp, mmco_index)))) {
|
||||||
|
av_log(h->s.avctx, AV_LOG_ERROR,
|
||||||
|
"Inconsistent MMCO state between slices [%d, %d, %d]\n",
|
||||||
|
mmco_index, h->mmco_index, i);
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@@ -187,7 +187,7 @@ static void rv30_loop_filter(RV34DecContext *r, int row)
|
|||||||
for(i = !mb_x; i < 2; i++, C += 4){
|
for(i = !mb_x; i < 2; i++, C += 4){
|
||||||
int ij = i + (j >> 1);
|
int ij = i + (j >> 1);
|
||||||
loc_lim = 0;
|
loc_lim = 0;
|
||||||
if(cur_cbp && (1 << ij))
|
if (cur_cbp & (1 << ij))
|
||||||
loc_lim = cur_lim;
|
loc_lim = cur_lim;
|
||||||
else if(!i && left_cbp & (1 << (ij + 1)))
|
else if(!i && left_cbp & (1 << (ij + 1)))
|
||||||
loc_lim = left_lim;
|
loc_lim = left_lim;
|
||||||
@@ -229,7 +229,7 @@ static void rv30_loop_filter(RV34DecContext *r, int row)
|
|||||||
for(i = 0; i < 2; i++, C += 4){
|
for(i = 0; i < 2; i++, C += 4){
|
||||||
int ij = i + (j >> 1);
|
int ij = i + (j >> 1);
|
||||||
loc_lim = 0;
|
loc_lim = 0;
|
||||||
if(r->cbp_chroma[mb_pos] && (1 << ij))
|
if (r->cbp_chroma[mb_pos] & (1 << ij))
|
||||||
loc_lim = cur_lim;
|
loc_lim = cur_lim;
|
||||||
else if(!j && top_cbp & (1 << (ij + 2)))
|
else if(!j && top_cbp & (1 << (ij + 2)))
|
||||||
loc_lim = top_lim;
|
loc_lim = top_lim;
|
||||||
|
@@ -2339,6 +2339,8 @@ static av_cold int theora_decode_init(AVCodecContext *avctx)
|
|||||||
}
|
}
|
||||||
|
|
||||||
for(i=0;i<3;i++) {
|
for(i=0;i<3;i++) {
|
||||||
|
if (header_len[i] <= 0)
|
||||||
|
continue;
|
||||||
init_get_bits(&gb, header_start[i], header_len[i] * 8);
|
init_get_bits(&gb, header_start[i], header_len[i] * 8);
|
||||||
|
|
||||||
ptype = get_bits(&gb, 8);
|
ptype = get_bits(&gb, 8);
|
||||||
|
@@ -23,8 +23,15 @@
|
|||||||
* libcdio CD grabbing
|
* libcdio CD grabbing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#if HAVE_CDIO_PARANOIA_H
|
||||||
#include <cdio/cdda.h>
|
#include <cdio/cdda.h>
|
||||||
#include <cdio/paranoia.h>
|
#include <cdio/paranoia.h>
|
||||||
|
#elif HAVE_CDIO_PARANOIA_PARANOIA_H
|
||||||
|
#include <cdio/paranoia/cdda.h>
|
||||||
|
#include <cdio/paranoia/paranoia.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libavutil/log.h"
|
#include "libavutil/log.h"
|
||||||
#include "libavutil/mem.h"
|
#include "libavutil/mem.h"
|
||||||
|
@@ -8,13 +8,13 @@
|
|||||||
0, 6, 6, 1, 126720, 0x94a0f126
|
0, 6, 6, 1, 126720, 0x94a0f126
|
||||||
0, 7, 7, 1, 126720, 0x0250f106
|
0, 7, 7, 1, 126720, 0x0250f106
|
||||||
0, 8, 8, 1, 126720, 0xcf6ab4bc
|
0, 8, 8, 1, 126720, 0xcf6ab4bc
|
||||||
0, 9, 9, 1, 126720, 0x44aeb57c
|
0, 9, 9, 1, 126720, 0x429eb57c
|
||||||
0, 10, 10, 1, 126720, 0x33b0b5bc
|
0, 10, 10, 1, 126720, 0x3bf0b5bc
|
||||||
0, 11, 11, 1, 126720, 0xc4bab591
|
0, 11, 11, 1, 126720, 0xcaedb591
|
||||||
0, 12, 12, 1, 126720, 0xa492b5ec
|
0, 12, 12, 1, 126720, 0xa492b5ec
|
||||||
0, 13, 13, 1, 126720, 0x1459b85c
|
0, 13, 13, 1, 126720, 0x2431b85c
|
||||||
0, 14, 14, 1, 126720, 0x806fb8dc
|
0, 14, 14, 1, 126720, 0x8283b8dc
|
||||||
0, 15, 15, 1, 126720, 0xd241b871
|
0, 15, 15, 1, 126720, 0xd71bb871
|
||||||
0, 16, 16, 1, 126720, 0x698eb5cc
|
0, 16, 16, 1, 126720, 0x698eb5cc
|
||||||
0, 17, 17, 1, 126720, 0x4719aa98
|
0, 17, 17, 1, 126720, 0x4719aa98
|
||||||
0, 18, 18, 1, 126720, 0x9ca1962c
|
0, 18, 18, 1, 126720, 0x9ca1962c
|
||||||
@@ -28,83 +28,83 @@
|
|||||||
0, 26, 26, 1, 126720, 0x7af2ea86
|
0, 26, 26, 1, 126720, 0x7af2ea86
|
||||||
0, 27, 27, 1, 126720, 0x40d4b4eb
|
0, 27, 27, 1, 126720, 0x40d4b4eb
|
||||||
0, 28, 28, 1, 126720, 0x49d00307
|
0, 28, 28, 1, 126720, 0x49d00307
|
||||||
0, 29, 29, 1, 126720, 0x44c8848e
|
0, 29, 29, 1, 126720, 0x0654849c
|
||||||
0, 30, 30, 1, 126720, 0xc6990101
|
0, 30, 30, 1, 126720, 0xe46d0107
|
||||||
0, 31, 31, 1, 126720, 0x2e01b963
|
0, 31, 31, 1, 126720, 0xa483b963
|
||||||
0, 32, 32, 1, 126720, 0xd0e903f0
|
0, 32, 32, 1, 126720, 0xd0e903f0
|
||||||
0, 33, 33, 1, 126720, 0x3457d592
|
0, 33, 33, 1, 126720, 0x964ed592
|
||||||
0, 34, 34, 1, 126720, 0x4f1ddb3c
|
0, 34, 34, 1, 126720, 0x23fbdb3c
|
||||||
0, 35, 35, 1, 126720, 0x3980ace5
|
0, 35, 35, 1, 126720, 0x59fdace5
|
||||||
0, 36, 36, 1, 126720, 0xb1e37954
|
0, 36, 36, 1, 126720, 0xb1e37954
|
||||||
0, 37, 37, 1, 126720, 0x619fc554
|
0, 37, 37, 1, 126720, 0x8ed9c554
|
||||||
0, 38, 38, 1, 126720, 0x945fb39e
|
0, 38, 38, 1, 126720, 0xe3c4b39f
|
||||||
0, 39, 39, 1, 126720, 0xb1d5e0ce
|
0, 39, 39, 1, 126720, 0xfd17e0ce
|
||||||
0, 40, 40, 1, 126720, 0xf26e1dcc
|
0, 40, 40, 1, 126720, 0xf26e1dcc
|
||||||
0, 41, 41, 1, 126720, 0x04d5783e
|
0, 41, 41, 1, 126720, 0x13cc783c
|
||||||
0, 42, 42, 1, 126720, 0xbaa0479e
|
0, 42, 42, 1, 126720, 0x47ad47a1
|
||||||
0, 43, 43, 1, 126720, 0x20d88b01
|
0, 43, 43, 1, 126720, 0x427c8b0d
|
||||||
0, 44, 44, 1, 126720, 0x59d99901
|
0, 44, 44, 1, 126720, 0x59d99901
|
||||||
0, 45, 45, 1, 126720, 0x1c6e09f6
|
0, 45, 45, 1, 126720, 0xc40707da
|
||||||
0, 46, 46, 1, 126720, 0xeec50fc5
|
0, 46, 46, 1, 126720, 0xcd060dce
|
||||||
0, 47, 47, 1, 126720, 0xb3a92827
|
0, 47, 47, 1, 126720, 0xed4024f6
|
||||||
0, 48, 48, 1, 126720, 0xf62dd2b6
|
0, 48, 48, 1, 126720, 0x7decd2b4
|
||||||
0, 49, 49, 1, 126720, 0x75b1e619
|
0, 49, 49, 1, 126720, 0xd1d2e730
|
||||||
0, 50, 50, 1, 126720, 0x6bbce2c0
|
0, 50, 50, 1, 126720, 0x77cee457
|
||||||
0, 51, 51, 1, 126720, 0xd93e023c
|
0, 51, 51, 1, 126720, 0xe78d02c0
|
||||||
0, 52, 52, 1, 126720, 0xbbe8e7c2
|
0, 52, 52, 1, 126720, 0xad0beb29
|
||||||
0, 53, 53, 1, 126720, 0x2272ec17
|
0, 53, 53, 1, 126720, 0xc414eea2
|
||||||
0, 54, 54, 1, 126720, 0xf5e4ee6e
|
0, 54, 54, 1, 126720, 0x6a15f17d
|
||||||
0, 55, 55, 1, 126720, 0x751d2607
|
0, 55, 55, 1, 126720, 0x516027f6
|
||||||
0, 56, 56, 1, 126720, 0x44c499c9
|
0, 56, 56, 1, 126720, 0x4eda9dce
|
||||||
0, 57, 57, 1, 126720, 0xddccd842
|
0, 57, 57, 1, 126720, 0x7d9bdba3
|
||||||
0, 58, 58, 1, 126720, 0x508dd214
|
0, 58, 58, 1, 126720, 0x7aa3d5c0
|
||||||
0, 59, 59, 1, 126720, 0x8eb10272
|
0, 59, 59, 1, 126720, 0x7c7a04f9
|
||||||
0, 60, 60, 1, 126720, 0x7224b1c6
|
0, 60, 60, 1, 126720, 0x3e8fb6cc
|
||||||
0, 61, 61, 1, 126720, 0x50ff456c
|
0, 61, 61, 1, 126720, 0xd5474916
|
||||||
0, 62, 62, 1, 126720, 0xa81e2731
|
0, 62, 62, 1, 126720, 0xf3f62bab
|
||||||
0, 63, 63, 1, 126720, 0x7e50456d
|
0, 63, 63, 1, 126720, 0x2f054987
|
||||||
0, 64, 64, 1, 126720, 0x44802978
|
0, 64, 64, 1, 126720, 0x974c2e81
|
||||||
0, 65, 65, 1, 126720, 0x86e88743
|
0, 65, 65, 1, 126720, 0xe7e28a97
|
||||||
0, 66, 66, 1, 126720, 0x0b1087d6
|
0, 66, 66, 1, 126720, 0x45e38b41
|
||||||
0, 67, 67, 1, 126720, 0xb0227d21
|
0, 67, 67, 1, 126720, 0x169c7f19
|
||||||
0, 68, 68, 1, 126720, 0x29d10bd2
|
0, 68, 68, 1, 126720, 0x91d90ee8
|
||||||
0, 69, 69, 1, 126720, 0x04b43afa
|
0, 69, 69, 1, 126720, 0xdd653e24
|
||||||
0, 70, 70, 1, 126720, 0xb48e9698
|
0, 70, 70, 1, 126720, 0x0da598c4
|
||||||
0, 71, 71, 1, 126720, 0x75d760fb
|
0, 71, 71, 1, 126720, 0x687e62cc
|
||||||
0, 72, 72, 1, 126720, 0xa2ab1fdb
|
0, 72, 72, 1, 126720, 0x7631232d
|
||||||
0, 73, 73, 1, 126720, 0xec30a5ee
|
0, 73, 73, 1, 126720, 0xbd1ea826
|
||||||
0, 74, 74, 1, 126720, 0xbdab7c8c
|
0, 74, 74, 1, 126720, 0xb55f7f4b
|
||||||
0, 75, 75, 1, 126720, 0xac5c3f2c
|
0, 75, 75, 1, 126720, 0x923f3fc9
|
||||||
0, 76, 76, 1, 126720, 0xce6350be
|
0, 76, 76, 1, 126720, 0x15515301
|
||||||
0, 77, 77, 1, 126720, 0xb109657a
|
0, 77, 77, 1, 126720, 0x9ee066e5
|
||||||
0, 78, 78, 1, 126720, 0x723865a4
|
0, 78, 78, 1, 126720, 0x7c21664b
|
||||||
0, 79, 79, 1, 126720, 0xa9869124
|
0, 79, 79, 1, 126720, 0x36849100
|
||||||
0, 80, 80, 1, 126720, 0xc41af558
|
0, 80, 80, 1, 126720, 0x08b1f61a
|
||||||
0, 81, 81, 1, 126720, 0xcbe6a402
|
0, 81, 81, 1, 126720, 0x5bfca6e2
|
||||||
0, 82, 82, 1, 126720, 0xb6735ecb
|
0, 82, 82, 1, 126720, 0x929f60e3
|
||||||
0, 83, 83, 1, 126720, 0xba3059f2
|
0, 83, 83, 1, 126720, 0xa2b55c29
|
||||||
0, 84, 84, 1, 126720, 0xe7d63b8d
|
0, 84, 84, 1, 126720, 0x68bd3ff3
|
||||||
0, 85, 85, 1, 126720, 0x8f115906
|
0, 85, 85, 1, 126720, 0x30db5b29
|
||||||
0, 86, 86, 1, 126720, 0xaf6a8dcb
|
0, 86, 86, 1, 126720, 0x00578f9b
|
||||||
0, 87, 87, 1, 126720, 0xb73e846e
|
0, 87, 87, 1, 126720, 0x18368642
|
||||||
0, 88, 88, 1, 126720, 0xedd6380f
|
0, 88, 88, 1, 126720, 0xbcb83a80
|
||||||
0, 89, 89, 1, 126720, 0xd9026acf
|
0, 89, 89, 1, 126720, 0x90f36b72
|
||||||
0, 90, 90, 1, 126720, 0xa03a650b
|
0, 90, 90, 1, 126720, 0x85e46522
|
||||||
0, 91, 91, 1, 126720, 0x262765bc
|
0, 91, 91, 1, 126720, 0x2429660a
|
||||||
0, 92, 92, 1, 126720, 0xaaa9ded1
|
0, 92, 92, 1, 126720, 0xf283dfe2
|
||||||
0, 93, 93, 1, 126720, 0xe4f42665
|
0, 93, 93, 1, 126720, 0x896b27dc
|
||||||
0, 94, 94, 1, 126720, 0x78daf760
|
0, 94, 94, 1, 126720, 0x5af4f961
|
||||||
0, 95, 95, 1, 126720, 0x3b0c6ef8
|
0, 95, 95, 1, 126720, 0x31897085
|
||||||
0, 96, 96, 1, 126720, 0xb745df80
|
0, 96, 96, 1, 126720, 0x441ce33e
|
||||||
0, 97, 97, 1, 126720, 0x08e57b90
|
0, 97, 97, 1, 126720, 0x903f8009
|
||||||
0, 98, 98, 1, 126720, 0x6f883ab0
|
0, 98, 98, 1, 126720, 0xbdf33dba
|
||||||
0, 99, 99, 1, 126720, 0x934b4dd5
|
0, 99, 99, 1, 126720, 0x8a364f36
|
||||||
0, 100, 100, 1, 126720, 0x762f108f
|
0, 100, 100, 1, 126720, 0xda5513f6
|
||||||
0, 101, 101, 1, 126720, 0x91ee0f2b
|
0, 101, 101, 1, 126720, 0xd60012b3
|
||||||
0, 102, 102, 1, 126720, 0x9af6e5e8
|
0, 102, 102, 1, 126720, 0x67bce7be
|
||||||
0, 103, 103, 1, 126720, 0xdcd95e0a
|
0, 103, 103, 1, 126720, 0x697e6174
|
||||||
0, 104, 104, 1, 126720, 0x22c33a6e
|
0, 104, 104, 1, 126720, 0xbe3e3e90
|
||||||
0, 105, 105, 1, 126720, 0x21c1b7f4
|
0, 105, 105, 1, 126720, 0xf3e4bba6
|
||||||
0, 106, 106, 1, 126720, 0x0a66a1ed
|
0, 106, 106, 1, 126720, 0x8124a679
|
||||||
0, 107, 107, 1, 126720, 0x53fea81b
|
0, 107, 107, 1, 126720, 0x58d1acde
|
||||||
0, 108, 108, 1, 126720, 0x597f5567
|
0, 108, 108, 1, 126720, 0xd8a15ba3
|
||||||
|
@@ -8,13 +8,13 @@
|
|||||||
0, 6, 6, 1, 126720, 0x5e6ff4d7
|
0, 6, 6, 1, 126720, 0x5e6ff4d7
|
||||||
0, 7, 7, 1, 126720, 0xcc10f4b7
|
0, 7, 7, 1, 126720, 0xcc10f4b7
|
||||||
0, 8, 8, 1, 126720, 0x763ab817
|
0, 8, 8, 1, 126720, 0x763ab817
|
||||||
0, 9, 9, 1, 126720, 0xeb6fb8d7
|
0, 9, 9, 1, 126720, 0xe95fb8d7
|
||||||
0, 10, 10, 1, 126720, 0xda71b917
|
0, 10, 10, 1, 126720, 0xe2b1b917
|
||||||
0, 11, 11, 1, 126720, 0x0967b8f7
|
0, 11, 11, 1, 126720, 0x11abb8f7
|
||||||
0, 12, 12, 1, 126720, 0x4b62b947
|
0, 12, 12, 1, 126720, 0x4b62b947
|
||||||
0, 13, 13, 1, 126720, 0xbb1abbb7
|
0, 13, 13, 1, 126720, 0xcaf2bbb7
|
||||||
0, 14, 14, 1, 126720, 0x273fbc37
|
0, 14, 14, 1, 126720, 0x2953bc37
|
||||||
0, 15, 15, 1, 126720, 0x16eebbd7
|
0, 15, 15, 1, 126720, 0x1dd9bbd7
|
||||||
0, 16, 16, 1, 126720, 0x105eb927
|
0, 16, 16, 1, 126720, 0x105eb927
|
||||||
0, 17, 17, 1, 126720, 0x7fa3ae27
|
0, 17, 17, 1, 126720, 0x7fa3ae27
|
||||||
0, 18, 18, 1, 126720, 0x722e99f7
|
0, 18, 18, 1, 126720, 0x722e99f7
|
||||||
@@ -28,83 +28,83 @@
|
|||||||
0, 26, 26, 1, 126720, 0x6ddaef32
|
0, 26, 26, 1, 126720, 0x6ddaef32
|
||||||
0, 27, 27, 1, 126720, 0xde1bb900
|
0, 27, 27, 1, 126720, 0xde1bb900
|
||||||
0, 28, 28, 1, 126720, 0xac6c071b
|
0, 28, 28, 1, 126720, 0xac6c071b
|
||||||
0, 29, 29, 1, 126720, 0x04e7897c
|
0, 29, 29, 1, 126720, 0x4a9f897c
|
||||||
0, 30, 30, 1, 126720, 0x5eee050f
|
0, 30, 30, 1, 126720, 0xd8fa050f
|
||||||
0, 31, 31, 1, 126720, 0xe675be59
|
0, 31, 31, 1, 126720, 0x5d06be59
|
||||||
0, 32, 32, 1, 126720, 0xdc3e0837
|
0, 32, 32, 1, 126720, 0xdc3e0837
|
||||||
0, 33, 33, 1, 126720, 0x68cfda2b
|
0, 33, 33, 1, 126720, 0xcac6da2b
|
||||||
0, 34, 34, 1, 126720, 0xe572dfc9
|
0, 34, 34, 1, 126720, 0x6672dfc9
|
||||||
0, 35, 35, 1, 126720, 0x582fb176
|
0, 35, 35, 1, 126720, 0x7491b176
|
||||||
0, 36, 36, 1, 126720, 0xa9477df0
|
0, 36, 36, 1, 126720, 0xa9477df0
|
||||||
0, 37, 37, 1, 126720, 0xbc3cc34f
|
0, 37, 37, 1, 126720, 0xe976c34f
|
||||||
0, 38, 38, 1, 126720, 0xcf8cb0e2
|
0, 38, 38, 1, 126720, 0xdb7ab0e2
|
||||||
0, 39, 39, 1, 126720, 0xcff1db35
|
0, 39, 39, 1, 126720, 0x1b42db35
|
||||||
0, 40, 40, 1, 126720, 0xc6e10f9f
|
0, 40, 40, 1, 126720, 0xc6e10f9f
|
||||||
0, 41, 41, 1, 126720, 0x75ae61b6
|
0, 41, 41, 1, 126720, 0x169d61b6
|
||||||
0, 42, 42, 1, 126720, 0x12af3119
|
0, 42, 42, 1, 126720, 0xc7623119
|
||||||
0, 43, 43, 1, 126720, 0x85597543
|
0, 43, 43, 1, 126720, 0x5b9b7543
|
||||||
0, 44, 44, 1, 126720, 0x68c27aca
|
0, 44, 44, 1, 126720, 0x68c27aca
|
||||||
0, 45, 45, 1, 126720, 0x554fe3e4
|
0, 45, 45, 1, 126720, 0xa0e4e1c9
|
||||||
0, 46, 46, 1, 126720, 0x72ecea95
|
0, 46, 46, 1, 126720, 0xbbdae87e
|
||||||
0, 47, 47, 1, 126720, 0xf4d003d1
|
0, 47, 47, 1, 126720, 0xe67e00a1
|
||||||
0, 48, 48, 1, 126720, 0x9bf6a605
|
0, 48, 48, 1, 126720, 0x648ea605
|
||||||
0, 49, 49, 1, 126720, 0x5d00b5fe
|
0, 49, 49, 1, 126720, 0x5becb718
|
||||||
0, 50, 50, 1, 126720, 0x93f7b040
|
0, 50, 50, 1, 126720, 0xb79ab1da
|
||||||
0, 51, 51, 1, 126720, 0x0d6ad154
|
0, 51, 51, 1, 126720, 0x0d52d1dc
|
||||||
0, 52, 52, 1, 126720, 0x4be8b4ea
|
0, 52, 52, 1, 126720, 0x1277b853
|
||||||
0, 53, 53, 1, 126720, 0xe39bba0d
|
0, 53, 53, 1, 126720, 0xc57cbc83
|
||||||
0, 54, 54, 1, 126720, 0x9c21bad8
|
0, 54, 54, 1, 126720, 0x2126bdc3
|
||||||
0, 55, 55, 1, 126720, 0xa567f25b
|
0, 55, 55, 1, 126720, 0x4c1ef41f
|
||||||
0, 56, 56, 1, 126720, 0x7a82663a
|
0, 56, 56, 1, 126720, 0x185f6a2c
|
||||||
0, 57, 57, 1, 126720, 0x72f2a47d
|
0, 57, 57, 1, 126720, 0xb2b5a7d3
|
||||||
0, 58, 58, 1, 126720, 0x4f639ebe
|
0, 58, 58, 1, 126720, 0x32d7a26d
|
||||||
0, 59, 59, 1, 126720, 0xab0fce83
|
0, 59, 59, 1, 126720, 0x0bffd118
|
||||||
0, 60, 60, 1, 126720, 0x6cf87d39
|
0, 60, 60, 1, 126720, 0x2eed823a
|
||||||
0, 61, 61, 1, 126720, 0x534a10cc
|
0, 61, 61, 1, 126720, 0xc4c0147c
|
||||||
0, 62, 62, 1, 126720, 0x6bbcf44c
|
0, 62, 62, 1, 126720, 0x1f8bf8ac
|
||||||
0, 63, 63, 1, 126720, 0xfdca11d3
|
0, 63, 63, 1, 126720, 0xfcb715e8
|
||||||
0, 64, 64, 1, 126720, 0x7e58f5a6
|
0, 64, 64, 1, 126720, 0xc3e9fa9c
|
||||||
0, 65, 65, 1, 126720, 0x5fd753d8
|
0, 65, 65, 1, 126720, 0x9ad8572c
|
||||||
0, 66, 66, 1, 126720, 0x0c735615
|
0, 66, 66, 1, 126720, 0x2800596d
|
||||||
0, 67, 67, 1, 126720, 0x2a034ebf
|
0, 67, 67, 1, 126720, 0x3caa5094
|
||||||
0, 68, 68, 1, 126720, 0xeaf3dd0b
|
0, 68, 68, 1, 126720, 0x6162e000
|
||||||
0, 69, 69, 1, 126720, 0x0eaf0c1b
|
0, 69, 69, 1, 126720, 0x18200f2c
|
||||||
0, 70, 70, 1, 126720, 0xce5e6794
|
0, 70, 70, 1, 126720, 0x649e699f
|
||||||
0, 71, 71, 1, 126720, 0xf27c31c3
|
0, 71, 71, 1, 126720, 0x5f513367
|
||||||
0, 72, 72, 1, 126720, 0xb64af168
|
0, 72, 72, 1, 126720, 0x71fbf4a8
|
||||||
0, 73, 73, 1, 126720, 0x14cf7974
|
0, 73, 73, 1, 126720, 0x5bff7b97
|
||||||
0, 74, 74, 1, 126720, 0x1c2a513d
|
0, 74, 74, 1, 126720, 0xbad453d4
|
||||||
0, 75, 75, 1, 126720, 0xa3f515ab
|
0, 75, 75, 1, 126720, 0x56e6161d
|
||||||
0, 76, 76, 1, 126720, 0xcfd62765
|
0, 76, 76, 1, 126720, 0x524f2980
|
||||||
0, 77, 77, 1, 126720, 0xbc513f2a
|
0, 77, 77, 1, 126720, 0x0589405a
|
||||||
0, 78, 78, 1, 126720, 0xbc303fae
|
0, 78, 78, 1, 126720, 0x5c264043
|
||||||
0, 79, 79, 1, 126720, 0x2f8f69b9
|
0, 79, 79, 1, 126720, 0x2394696f
|
||||||
0, 80, 80, 1, 126720, 0x0a22cc69
|
0, 80, 80, 1, 126720, 0x1aa0cd15
|
||||||
0, 81, 81, 1, 126720, 0xd9f67585
|
0, 81, 81, 1, 126720, 0xd6ec7840
|
||||||
0, 82, 82, 1, 126720, 0x20403001
|
0, 82, 82, 1, 126720, 0xde5531f0
|
||||||
0, 83, 83, 1, 126720, 0xf92b2a25
|
0, 83, 83, 1, 126720, 0x03a42c3a
|
||||||
0, 84, 84, 1, 126720, 0x3c170aad
|
0, 84, 84, 1, 126720, 0xbdee0efb
|
||||||
0, 85, 85, 1, 126720, 0x3378251f
|
0, 85, 85, 1, 126720, 0xa6012736
|
||||||
0, 86, 86, 1, 126720, 0xb3ed5911
|
0, 86, 86, 1, 126720, 0x448f5ae6
|
||||||
0, 87, 87, 1, 126720, 0x35d24ef8
|
0, 87, 87, 1, 126720, 0x8a2550c3
|
||||||
0, 88, 88, 1, 126720, 0x8da30275
|
0, 88, 88, 1, 126720, 0x143104e7
|
||||||
0, 89, 89, 1, 126720, 0xc15a3577
|
0, 89, 89, 1, 126720, 0x75db363d
|
||||||
0, 90, 90, 1, 126720, 0xf2942f53
|
0, 90, 90, 1, 126720, 0x906d2f9d
|
||||||
0, 91, 91, 1, 126720, 0x44d8304a
|
0, 91, 91, 1, 126720, 0xfc7b30ab
|
||||||
0, 92, 92, 1, 126720, 0xd688a932
|
0, 92, 92, 1, 126720, 0xd3edaa62
|
||||||
0, 93, 93, 1, 126720, 0x0a24f256
|
0, 93, 93, 1, 126720, 0x6267f3fc
|
||||||
0, 94, 94, 1, 126720, 0xfab9c45d
|
0, 94, 94, 1, 126720, 0x87b6c67f
|
||||||
0, 95, 95, 1, 126720, 0x10e939ce
|
0, 95, 95, 1, 126720, 0x84da3b79
|
||||||
0, 96, 96, 1, 126720, 0x97fcaa3a
|
0, 96, 96, 1, 126720, 0x72fbae15
|
||||||
0, 97, 97, 1, 126720, 0x45464610
|
0, 97, 97, 1, 126720, 0xb8474a80
|
||||||
0, 98, 98, 1, 126720, 0xfe2e057d
|
0, 98, 98, 1, 126720, 0xbeae088b
|
||||||
0, 99, 99, 1, 126720, 0x0b6718ae
|
0, 99, 99, 1, 126720, 0x538b1a14
|
||||||
0, 100, 100, 1, 126720, 0x5284da7b
|
0, 100, 100, 1, 126720, 0x07bbddcd
|
||||||
0, 101, 101, 1, 126720, 0x23efdc35
|
0, 101, 101, 1, 126720, 0x807ddf8f
|
||||||
0, 102, 102, 1, 126720, 0xc387b2b3
|
0, 102, 102, 1, 126720, 0x325bb46d
|
||||||
0, 103, 103, 1, 126720, 0xc9e92bf1
|
0, 103, 103, 1, 126720, 0xd80c2f2a
|
||||||
0, 104, 104, 1, 126720, 0xfbf20a01
|
0, 104, 104, 1, 126720, 0xfc1b0dec
|
||||||
0, 105, 105, 1, 126720, 0x4d888b2e
|
0, 105, 105, 1, 126720, 0x46068ebc
|
||||||
0, 106, 106, 1, 126720, 0xdd0d74df
|
0, 106, 106, 1, 126720, 0xcd987941
|
||||||
0, 107, 107, 1, 126720, 0x49d07aa4
|
0, 107, 107, 1, 126720, 0x52f37f2e
|
||||||
0, 108, 108, 1, 126720, 0x08382b8e
|
0, 108, 108, 1, 126720, 0xc96931a2
|
||||||
|
Reference in New Issue
Block a user