Commit 848826f5 authored by Ronald S. Bultje's avatar Ronald S. Bultje

Native VP9 decoder.

Authors: Ronald S. Bultje <rsbultje gmail com>,
         Clement Boesch <u pkh me>
parent face578d
...@@ -36,6 +36,7 @@ version <next> ...@@ -36,6 +36,7 @@ version <next>
- make decoding alpha optional for prores, ffv1 and vp6 by setting - make decoding alpha optional for prores, ffv1 and vp6 by setting
the skip_alpha flag. the skip_alpha flag.
- ladspa wrapper filter - ladspa wrapper filter
- native VP9 decoder
version 2.0: version 2.0:
......
...@@ -1909,6 +1909,7 @@ vp6_decoder_select="h264chroma hpeldsp huffman videodsp vp3dsp" ...@@ -1909,6 +1909,7 @@ vp6_decoder_select="h264chroma hpeldsp huffman videodsp vp3dsp"
vp6a_decoder_select="vp6_decoder" vp6a_decoder_select="vp6_decoder"
vp6f_decoder_select="vp6_decoder" vp6f_decoder_select="vp6_decoder"
vp8_decoder_select="h264pred videodsp" vp8_decoder_select="h264pred videodsp"
vp9_decoder_select="videodsp"
webp_decoder_select="vp8_decoder" webp_decoder_select="vp8_decoder"
wmapro_decoder_select="mdct sinewin" wmapro_decoder_select="mdct sinewin"
wmav1_decoder_select="mdct sinewin" wmav1_decoder_select="mdct sinewin"
......
...@@ -94,7 +94,7 @@ Then pass @code{--enable-libtwolame} to configure to enable it. ...@@ -94,7 +94,7 @@ Then pass @code{--enable-libtwolame} to configure to enable it.
@section libvpx @section libvpx
FFmpeg can make use of the libvpx library for VP8 encoding. FFmpeg can make use of the libvpx library for VP8/VP9 encoding.
Go to @url{http://www.webmproject.org/} and follow the instructions for Go to @url{http://www.webmproject.org/} and follow the instructions for
installing the library. Then pass @code{--enable-libvpx} to configure to installing the library. Then pass @code{--enable-libvpx} to configure to
...@@ -676,6 +676,8 @@ following image formats are supported: ...@@ -676,6 +676,8 @@ following image formats are supported:
@tab fourcc: VP60,VP61,VP62 @tab fourcc: VP60,VP61,VP62
@item VP8 @tab E @tab X @item VP8 @tab E @tab X
@tab fourcc: VP80, encoding supported through external library libvpx @tab fourcc: VP80, encoding supported through external library libvpx
@item VP9 @tab E @tab X
@tab encoding supported through external library libvpx
@item Pinnacle TARGA CineWave YUV16 @tab @tab X @item Pinnacle TARGA CineWave YUV16 @tab @tab X
@tab fourcc: Y216 @tab fourcc: Y216
@item Prores @tab @tab X @item Prores @tab @tab X
......
...@@ -471,6 +471,7 @@ OBJS-$(CONFIG_VP5_DECODER) += vp5.o vp56.o vp56data.o vp56dsp.o \ ...@@ -471,6 +471,7 @@ OBJS-$(CONFIG_VP5_DECODER) += vp5.o vp56.o vp56data.o vp56dsp.o \
OBJS-$(CONFIG_VP6_DECODER) += vp6.o vp56.o vp56data.o vp56dsp.o \ OBJS-$(CONFIG_VP6_DECODER) += vp6.o vp56.o vp56data.o vp56dsp.o \
vp6dsp.o vp56rac.o vp6dsp.o vp56rac.o
OBJS-$(CONFIG_VP8_DECODER) += vp8.o vp8dsp.o vp56rac.o OBJS-$(CONFIG_VP8_DECODER) += vp8.o vp8dsp.o vp56rac.o
OBJS-$(CONFIG_VP9_DECODER) += vp9.o vp9dsp.o vp56rac.o
OBJS-$(CONFIG_VPLAYER_DECODER) += textdec.o ass.o OBJS-$(CONFIG_VPLAYER_DECODER) += textdec.o ass.o
OBJS-$(CONFIG_VQA_DECODER) += vqavideo.o OBJS-$(CONFIG_VQA_DECODER) += vqavideo.o
OBJS-$(CONFIG_WAVPACK_DECODER) += wavpack.o OBJS-$(CONFIG_WAVPACK_DECODER) += wavpack.o
......
...@@ -285,6 +285,7 @@ void avcodec_register_all(void) ...@@ -285,6 +285,7 @@ void avcodec_register_all(void)
REGISTER_DECODER(VP6A, vp6a); REGISTER_DECODER(VP6A, vp6a);
REGISTER_DECODER(VP6F, vp6f); REGISTER_DECODER(VP6F, vp6f);
REGISTER_DECODER(VP8, vp8); REGISTER_DECODER(VP8, vp8);
REGISTER_DECODER(VP9, vp9);
REGISTER_DECODER(VQA, vqa); REGISTER_DECODER(VQA, vqa);
REGISTER_DECODER(WEBP, webp); REGISTER_DECODER(WEBP, webp);
REGISTER_ENCDEC (WMV1, wmv1); REGISTER_ENCDEC (WMV1, wmv1);
......
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* VP9 compatible video decoder
*
* Copyright (C) 2013 Ronald S. Bultje <rsbultje gmail com>
* Copyright (C) 2013 Clément Bœsch <u pkh me>
*
* This file is part of FFmpeg.
*
* FFmpeg is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* FFmpeg is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef AVCODEC_VP9_H
#define AVCODEC_VP9_H
enum TxfmMode {
TX_4X4,
TX_8X8,
TX_16X16,
TX_32X32,
N_TXFM_SIZES,
TX_SWITCHABLE = N_TXFM_SIZES,
N_TXFM_MODES
};
enum TxfmType {
DCT_DCT,
DCT_ADST,
ADST_DCT,
ADST_ADST,
N_TXFM_TYPES
};
enum IntraPredMode {
VERT_PRED,
HOR_PRED,
DC_PRED,
DIAG_DOWN_LEFT_PRED,
DIAG_DOWN_RIGHT_PRED,
VERT_RIGHT_PRED,
HOR_DOWN_PRED,
VERT_LEFT_PRED,
HOR_UP_PRED,
TM_VP8_PRED,
LEFT_DC_PRED,
TOP_DC_PRED,
DC_128_PRED,
DC_127_PRED,
DC_129_PRED,
N_INTRA_PRED_MODES
};
enum FilterMode {
FILTER_8TAP_SMOOTH,
FILTER_8TAP_REGULAR,
FILTER_8TAP_SHARP,
FILTER_BILINEAR,
FILTER_SWITCHABLE,
};
#endif /* AVCODEC_VP9_H */
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
/*
* VP9 compatible video decoder
*
* Copyright (C) 2013 Ronald S. Bultje <rsbultje gmail com>
* Copyright (C) 2013 Clément Bœsch <u pkh me>
*
* This file is part of FFmpeg.
*
* FFmpeg is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* FFmpeg is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef AVCODEC_VP9DSP_H
#define AVCODEC_VP9DSP_H
#include <stdint.h>
#include "vp9.h"
typedef void (*vp9_mc_func)(uint8_t *dst, ptrdiff_t dst_stride,
const uint8_t *ref, ptrdiff_t ref_stride,
int h, int mx, int my);
typedef struct VP9DSPContext {
/*
* dimension 1: 0=4x4, 1=8x8, 2=16x16, 3=32x32
* dimension 2: intra prediction modes
*
* dst/left/top is aligned by transform-size (i.e. 4, 8, 16 or 32 pixels)
* stride is aligned by 16 pixels
* top[-1] is top/left; top[4,7] is top-right for 4x4
*/
// FIXME(rbultje) maybe replace left/top pointers with HAVE_TOP/
// HAVE_LEFT/HAVE_TOPRIGHT flags instead, and then handle it in-place?
// also needs to fit in with what h264/vp8/etc do
void (*intra_pred[N_TXFM_SIZES][N_INTRA_PRED_MODES])(uint8_t *dst,
ptrdiff_t stride,
const uint8_t *left,
const uint8_t *top);
/*
* dimension 1: 0=4x4, 1=8x8, 2=16x16, 3=32x32, 4=lossless (3-4=dct only)
* dimension 2: 0=dct/dct, 1=dct/adst, 2=adst/dct, 3=adst/adst
*
* dst is aligned by transform-size (i.e. 4, 8, 16 or 32 pixels)
* stride is aligned by 16 pixels
* block is 16-byte aligned
* eob indicates the position (+1) of the last non-zero coefficient,
* in scan-order. This can be used to write faster versions, e.g. a
* dc-only 4x4/8x8/16x16/32x32, or a 4x4-only (eob<10) 8x8/16x16/32x32,
* etc.
*/
// FIXME also write idct_add_block() versions for whole (inter) pred
// blocks, so we can do 2 4x4s at once
void (*itxfm_add[N_TXFM_SIZES + 1][N_TXFM_TYPES])(uint8_t *dst,
ptrdiff_t stride,
int16_t *block, int eob);
/*
* dimension 1: width of filter (0=4, 1=8, 2=16)
* dimension 2: 0=col-edge filter (h), 1=row-edge filter (v)
*
* dst/stride are aligned by 8
*/
void (*loop_filter_8[3][2])(uint8_t *dst, ptrdiff_t stride,
int mb_lim, int lim, int hev_thr);
/*
* dimension 1: 0=col-edge filter (h), 1=row-edge filter (v)
*
* The width of filter is assumed to be 16; dst/stride are aligned by 16
*/
void (*loop_filter_16[2])(uint8_t *dst, ptrdiff_t stride,
int mb_lim, int lim, int hev_thr);
/*
* dimension 1/2: width of filter (0=4, 1=8) for each filter half
* dimension 3: 0=col-edge filter (h), 1=row-edge filter (v)
*
* dst/stride are aligned by operation size
* this basically calls loop_filter[d1][d3][0](), followed by
* loop_filter[d2][d3][0]() on the next 8 pixels
* mb_lim/lim/hev_thr contain two values in the lowest two bytes of the
* integer.
*/
// FIXME perhaps a mix4 that operates on 32px (for AVX2)
void (*loop_filter_mix2[2][2][2])(uint8_t *dst, ptrdiff_t stride,
int mb_lim, int lim, int hev_thr);
/*
* dimension 1: hsize (0: 64, 1: 32, 2: 16, 3: 8, 4: 4)
* dimension 2: filter type (0: smooth, 1: regular, 2: sharp, 3: bilin)
* dimension 3: averaging type (0: put, 1: avg)
* dimension 4: x subpel interpolation (0: none, 1: 8tap/bilin)
* dimension 5: y subpel interpolation (1: none, 1: 8tap/bilin)
*
* dst/stride are aligned by hsize
*/
vp9_mc_func mc[5][4][2][2][2];
} VP9DSPContext;
void ff_vp9dsp_init(VP9DSPContext *dsp);
#endif /* AVCODEC_VP9DSP_H */
...@@ -57,3 +57,33 @@ $(eval $(call FATE_VP8_FULL)) ...@@ -57,3 +57,33 @@ $(eval $(call FATE_VP8_FULL))
$(eval $(call FATE_VP8_FULL,-emu-edge,-flags +emu_edge)) $(eval $(call FATE_VP8_FULL,-emu-edge,-flags +emu_edge))
FATE_SAMPLES_AVCONV-$(CONFIG_VP8_DECODER) += $(FATE_VP8-yes) FATE_SAMPLES_AVCONV-$(CONFIG_VP8_DECODER) += $(FATE_VP8-yes)
fate-vp8: $(FATE_VP8-yes) fate-vp8: $(FATE_VP8-yes)
define FATE_VP9_SUITE
FATE_VP9-$(CONFIG_MATROSKA_DEMUXER) += fate-vp9$(2)-$(1)
fate-vp9$(2)-$(1): CMD = framemd5 $(3) -i $(TARGET_SAMPLES)/vp9-test-vectors/vp90-2-$(1).webm
fate-vp9$(2)-$(1): REF = $(SRC_PATH)/tests/ref/fate/vp9-$(1)
endef
VP9_Q = 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 \
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 \
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 \
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
VP9_SHARP = 1 2 3 4 5 6 7
VP9_SIZE_A = 08 10 16 18 32 34 64 66
VP9_SIZE_B = 196 198 200 202 208 210 224 226
define FATE_VP9_FULL
$(foreach Q,$(VP9_Q),$(eval $(call FATE_VP9_SUITE,00-quantizer-$(Q),$(1),$(2))))
$(foreach SHARP,$(VP9_SHARP),$(eval $(call FATE_VP9_SUITE,01-sharpness-$(SHARP),$(1),$(2))))
$(foreach W,$(VP9_SIZE_A),$(eval $(foreach H,$(VP9_SIZE_A),$(eval $(call FATE_VP9_SUITE,02-size-$(W)x$(H),$(1),$(2))))))
$(foreach W,$(VP9_SIZE_B),$(eval $(foreach H,$(VP9_SIZE_B),$(eval $(call FATE_VP9_SUITE,03-size-$(W)x$(H),$(1),$(2))))))
$(eval $(call FATE_VP9_SUITE,03-deltaq,$(1),$(2)))
$(eval $(call FATE_VP9_SUITE,2pass-akiyo,$(1),$(2)))
$(eval $(call FATE_VP9_SUITE,segmentation-akiyo,$(1),$(2)))
$(eval $(call FATE_VP9_SUITE,tiling-pedestrian,$(1),$(2)))
endef
$(eval $(call FATE_VP9_FULL))
$(eval $(call FATE_VP9_FULL,-emu-edge,-flags +emu_edge))
FATE_SAMPLES_AVCONV-$(CONFIG_VP9_DECODER) += $(FATE_VP9-yes)
fate-vp9: $(FATE_VP9-yes)
#tb 0: 1001/30000
0, 0, 0, 1, 152064, c3fbb7abbdb5bd4ed4a7e34768c17df1
0, 1, 1, 1, 152064, 08203c2595bdb2d58ead6f921345d699
#tb 0: 1001/30000
0, 0, 0, 1, 152064, f041b870cf9236d5f22e2b08a77d5958
0, 1, 1, 1, 152064, cbdb7526986ae15592891488c9afc84c
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 98048cfdb4af5059f4085c5acc94ef8f
0, 1, 1, 1, 152064, 8160183e1eed1d0af4427be216b8b9f7
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 15c548208f5eda243a151a42f4d64855
0, 1, 1, 1, 152064, e96d463dc8e9b27b1c2ec40f77eee6ef
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 928c64a0747ac57ab50c1520d694fea7
0, 1, 1, 1, 152064, a6f6daa293231e95ef30ed168f582c84
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 082460718b7d7046c8fb23184b7f71ca
0, 1, 1, 1, 152064, 4a41aad51c40a92df72333e13f47d3fe
#tb 0: 1001/30000
0, 0, 0, 1, 152064, cfca1bed96ff62a69b2d841fda01c6b9
0, 1, 1, 1, 152064, 9b4d61f1b998745c108f8eb67925e03d
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 6f5122064bead9d9882bec2698a6ed9c
0, 1, 1, 1, 152064, 50dae67d2f57a76eece210dee8b6df9e
#tb 0: 1001/30000
0, 0, 0, 1, 152064, eb3d6985fcda5d93dd62d53354e8a093
0, 1, 1, 1, 152064, 5b1f5b7780b4cafe1f75e56a0b526643
#tb 0: 1001/30000
0, 0, 0, 1, 152064, d7ccaf28c59875fe91983def5490d2b1
0, 1, 1, 1, 152064, bd98fe9492054826748de840b4495309
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 20dda6231f9801c9c237c6d09d9939b6
0, 1, 1, 1, 152064, 23c91e93807fb9a4ed5bd5bdd449d99f
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 960833315ebcdee97f46c4d98d0f3fef
0, 1, 1, 1, 152064, eec40507d17b64b7895a61cb87b2096a
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 6533224d3b6ba1ec0dd973bbe56c6349
0, 1, 1, 1, 152064, 12ceadc6d28327a24a75f8c40b6084d1
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 7268de6756014f79a56dcf010c52a97f
0, 1, 1, 1, 152064, 9e39e9b0e2295b8460dfa05f44762771
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 57e9e333c641fa952f7485b788df225a
0, 1, 1, 1, 152064, 551f0cea83dcdf4540c3983736757874
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 17a0a2842856b9e89aede237648d5dda
0, 1, 1, 1, 152064, c9fcade888a38621bebe3d4b41664245
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 6cc2089e9a3d352fe10b59ccd935c677
0, 1, 1, 1, 152064, d165bf7b9cb901e121a65038758d8613
#tb 0: 1001/30000
0, 0, 0, 1, 152064, bc80511c83162c09661f155cd29f6dd8
0, 1, 1, 1, 152064, a62f1cbdb3f86d2fb4c880cfd917def5
#tb 0: 1001/30000
0, 0, 0, 1, 152064, b2d350f6faa41cb50c2e8a9907d0f4a5
0, 1, 1, 1, 152064, 39b4380d16bc8e093dd4dba475175fb3
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 441e09be3c15fcb240afd74bb7a10a72
0, 1, 1, 1, 152064, 32ae5dac876ca5d5ae6ab7c74f4dc25d
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 7786eb9944dba0553e129133523a98c1
0, 1, 1, 1, 152064, 206d888f8453427f10a40aa8bf5f6df0
#tb 0: 1001/30000
0, 0, 0, 1, 152064, aab95e195be71feca050a839d7b3154d
0, 1, 1, 1, 152064, 02a05d699bbbdc477e34bb0dad9f0391
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 41f853c3ee2d4611b645cc643d82e287
0, 1, 1, 1, 152064, 1c240c653110ff8609ca0f0287a6496d
#tb 0: 1001/30000
0, 0, 0, 1, 152064, bc5b07369df50c8f97ce1a377fe513cf
0, 1, 1, 1, 152064, ce62ddb4f3e305d0f8587ae8bb44cc79
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 982d54041221c977b6f0e37a9236cc76
0, 1, 1, 1, 152064, 57631e7f13f645c834e2944ebfd6d40e
#tb 0: 1001/30000
0, 0, 0, 1, 152064, b0fb55f3f2f56b3d27038e83c10123ce
0, 1, 1, 1, 152064, 9fcac3becdcc2d30d778a55eca4c2018
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 4f645e0f354da77b9e2f2a6753c361da
0, 1, 1, 1, 152064, b7542998ec298273ca662bc9b658d10e
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 6edc96a3747cad43828397045764206e
0, 1, 1, 1, 152064, 5fbc65d20fdca1abd69079851ce676d3
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 5db3e910e70da38bb91d01d73acc33dd
0, 1, 1, 1, 152064, b920ee7f7e61b7fdf9f44b1f738d0292
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 3cb3e310be5305077efa6216f6f10654
0, 1, 1, 1, 152064, 692d3e098af5978fe1a898ebc1a66a7a
#tb 0: 1001/30000
0, 0, 0, 1, 152064, e3b3cea66ea38c5dfba1aa73bb4c611d
0, 1, 1, 1, 152064, 42bb3e54b19c3f4c4f7ee3a6ba012e19
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 2523e9ecfd3781eafcd7da192dc105e9
0, 1, 1, 1, 152064, 6d5feea012b9a1f51fc643633e728764
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 0a0305eba36500ebf6cc6cc0f01f5a3b
0, 1, 1, 1, 152064, 2c76bcd6763467f9057a726fbcf50ab1
#tb 0: 1001/30000
0, 0, 0, 1, 152064, c68433e0e94047c220be9b629334f744
0, 1, 1, 1, 152064, fcfa4dff7a39bc9c5e315849ecbb46ea
#tb 0: 1001/30000
0, 0, 0, 1, 152064, ad9dc2f912c137b014a33e2792c88a25
0, 1, 1, 1, 152064, 11221ee4ea5c776f43af68756682cd5a
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 75031f898cccf303a64ab46b1f815389
0, 1, 1, 1, 152064, a4fc864e7fbc470dfcab6207e0eea152
#tb 0: 1001/30000
0, 0, 0, 1, 152064, c7824af009fde6cafdd8d39fae6bb6cf
0, 1, 1, 1, 152064, 516a82d5fc4dfa3daf713ed2ec36041b
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, fb23e0bc64728a492a33d985032f21b8
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 8347bfb891317e89ef66781d6c28e24f
0, 1, 1, 1, 152064, a5722f824d32deac042513a1a7dcdcd0
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 018968f97fac3bdff146cf22c1da5ef0
0, 1, 1, 1, 152064, ca8b09b01e5132183395e238f1c7901e
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 792660f6589ad5340be4bd0554435866
0, 1, 1, 1, 152064, 68c84c8a15d679e0a73678b93215c62c
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a456bdfc6c1c07b4cb3a3848843743b9
0, 1, 1, 1, 152064, fe41a12b8cb6bc5667ba2179e076f3b0
#tb 0: 1001/30000
0, 0, 0, 1, 152064, f016dd8431694d989700fb1ba71a5b2d
0, 1, 1, 1, 152064, e89c3c5b935157b40f2fb0ab92415828
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 7b8ab82625f3006bac89d4fb5197e71c
0, 1, 1, 1, 152064, 18bd3716045563dfba2c72b640b3274b
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 66fde04d8320c750e56406feefd29979
0, 1, 1, 1, 152064, f9d01d8fc1722ec345e624e14b404215
#tb 0: 1001/30000
0, 0, 0, 1, 152064, cc97597b015896d73f3e60e7ae44c4da
0, 1, 1, 1, 152064, fea98bc508f92135641ab99762444b14
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 79ed95c741178bb3c0954f1f6f8e21a3
0, 1, 1, 1, 152064, f02a06a5e2b5b7619c9a52c5bea0564d
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 9b98e948b8c2a822f21bd8419e6f4410
0, 1, 1, 1, 152064, 491382d68c16c2a3c6f1746598bc4a97
#tb 0: 1001/30000
0, 0, 0, 1, 152064, f0f095b0edae7262f44d7ed7ef84ded4
0, 1, 1, 1, 152064, 0e833889ccac81d60251007d1baf6500
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 6c1b7b7827617fb9b8417aca2cfdbcaa
0, 1, 1, 1, 152064, 4c1fc8a89297fdcf79f0faabd42b8684
#tb 0: 1001/30000
0, 0, 0, 1, 152064, ca6142db68463487bc28c888ab38476c
0, 1, 1, 1, 152064, 02a71153ec70f569524c3d814cb62f86
#tb 0: 1001/30000
0, 0, 0, 1, 152064, eece2627df1ddf0872256eb92352e179
0, 1, 1, 1, 152064, 0ee9f221246ad747250e4b5e8ba586e2
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 7290039d974c4e50db9d69f9864bcdbe
0, 1, 1, 1, 152064, 264765de9d02503038a4da54133b9f85
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 917af24da66f143a56a01eb2c2254285
0, 1, 1, 1, 152064, 45a05d3bc644420519619e4115662a70
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 6fea2820bb10a9dec9add4d2452b01f5
0, 1, 1, 1, 152064, 74675169a4bfc2ff5463c4db5d85a79f
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 11e5d196f6537fb7d85988d90195e556
0, 1, 1, 1, 152064, 8536106795f7c93c5a43a11493527469
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 40839b7a3a40ec10f96b8a75224f646d
0, 1, 1, 1, 152064, 11408dd73e8c45ddaab99f5c9650102b
#tb 0: 1001/30000
0, 0, 0, 1, 152064, d0e9fa03dd48da4592ebaadb4e3794e0
0, 1, 1, 1, 152064, 5172e29b1e04cd543833d6a68aab297c
#tb 0: 1001/30000
0, 0, 0, 1, 152064, bef4a27d460e7697e038fe6f1c8bd597
0, 1, 1, 1, 152064, 124674686cafc5f2ff5bc7ea412b8f3b
#tb 0: 1001/30000
0, 0, 0, 1, 152064, ae9d99e9d16ef20073300559566844ae
0, 1, 1, 1, 152064, da9405e5a6bfe4ed18d927ba2004008e
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 9e66bb8e1b5e206ea4afe4bf2d335ac5
0, 1, 1, 1, 152064, 092b74c905c12c1e87e90f5a79857736
#tb 0: 1001/30000
0, 0, 0, 1, 152064, d062dc6be246c8042744018765ef50a8
0, 1, 1, 1, 152064, 45fd9cbacb6a91060a7e49a58a85869d
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 62f7e42fe653e81c5a65a25389e045b5
0, 1, 1, 1, 152064, cb0cdd0b25689e0a43328550011d960d
#tb 0: 1001/30000
0, 0, 0, 1, 152064, 8467643dceff827e04acd82eeff1d1b0
0, 1, 1, 1, 152064, c786f49d66f4dfd685dea9605821a19f
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, aa20a75be3a316193496706c9f760d08
0, 2, 2, 1, 152064, 95567be97a64d3c9efe45f2524116a2e
0, 3, 3, 1, 152064, 219e86cd6b3cca312856eead21776b1c
0, 4, 4, 1, 152064, 4a67fd359ca362398e97c15eb018a2bb
0, 5, 5, 1, 152064, 9916d4e359274d690827f0eb22547423
0, 6, 6, 1, 152064, a07785b52561150c48f1a8eff89d5d75
0, 7, 7, 1, 152064, a3382a92982953dfa20018e5ac975b51
0, 8, 8, 1, 152064, 911836989ca7b148438aa3ec7fc7e303
0, 9, 9, 1, 152064, 5627b981e3fc9e4401d35d3a5ab25917
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, cd94572239817ae7c9b07de739c3272b
0, 2, 2, 1, 152064, 383cf752d457e122b5ff49d08960208e
0, 3, 3, 1, 152064, 1c0a6ec9cd3ce29b8b004e7526f1b07e
0, 4, 4, 1, 152064, 91c42a8a108d67947cabfc2a5a80df66
0, 5, 5, 1, 152064, 08c57fc1f3fec0305883315a66c714d1
0, 6, 6, 1, 152064, 70cb8d8dc83eac82f2d3c4b0376bb1aa
0, 7, 7, 1, 152064, ffd62a9ef829ec81f0f74f740488a41f
0, 8, 8, 1, 152064, bab0aa23b5854e2a70926046e4618710
0, 9, 9, 1, 152064, fec456f38f2a43661e786a8d5f67ed15
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, 0d487a146393a0b8b84b4be1b371b507
0, 2, 2, 1, 152064, 68372e191eba620a431cfff226026ac3
0, 3, 3, 1, 152064, de7fd274460e36b983fe93acc208d72f
0, 4, 4, 1, 152064, afbd36c61bab65b98ff9acf08e215721
0, 5, 5, 1, 152064, e1e9fc2ab4e7a187a8d8d84aae48d6b9
0, 6, 6, 1, 152064, 11d95de6a9cc5e00511e99534779faac
0, 7, 7, 1, 152064, cd2f5539fdfc2d8eefe6b6da28c13398
0, 8, 8, 1, 152064, a8b3aeed41da7aeb8d5b962ee4a4af93
0, 9, 9, 1, 152064, 4283670bd1c1c506ef18d3dafca22035
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, 8bad76c55b5149169d64ce6512521de6
0, 2, 2, 1, 152064, c1d986e1f9bf46382e598ba289b9bd7c
0, 3, 3, 1, 152064, 86c097ac6069c786023d3561dae68bac
0, 4, 4, 1, 152064, 8c238a2831b8c7c49736b6de6ff76ed8
0, 5, 5, 1, 152064, cb5a038ed0a74a317ee72dae93a7ee3e
0, 6, 6, 1, 152064, f8fe330a257e3e4e4c39c1c12820a654
0, 7, 7, 1, 152064, a73e2fcdcbb9334c0c123f8276a2c881
0, 8, 8, 1, 152064, 24fccece8ee639e4d0e00e4060e1db0c
0, 9, 9, 1, 152064, 46d6e9aad69a39c718c5fd1e41e86e6e
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, f1ce0a5d57a46c9ff1331804b7b03fdb
0, 2, 2, 1, 152064, 0364a085b06bee6b980189cf5378eda9
0, 3, 3, 1, 152064, 4b5358698d734b0ae210909a913d4c1e
0, 4, 4, 1, 152064, dc22565aaceee77b15fd8ab3c84bd5e0
0, 5, 5, 1, 152064, 5f6340b656536292b46ba9a647aeb6e4
0, 6, 6, 1, 152064, b7d4bce9a04b2a6caa45801be15e331e
0, 7, 7, 1, 152064, 534c851cfe59ffc047815ece98d8cede
0, 8, 8, 1, 152064, 786b0e1564d5c71aabfc2dd528cff4e7
0, 9, 9, 1, 152064, cac0366209cf471bb7cc3e64966cbbd4
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, 45d9ca07ed04210b1ebc743169bc8ec4
0, 2, 2, 1, 152064, 5b646cc309a711f1d8814f925002d8c4
0, 3, 3, 1, 152064, 34db8db727fa1ded0a55cc7cf85be249
0, 4, 4, 1, 152064, 54173d08afe6369b16a9c0c9cc6ce04d
0, 5, 5, 1, 152064, 76275b0a478cdb3c1fb527ebbce023c3
0, 6, 6, 1, 152064, e7643cdf0c42f2af700d8730bfc1a453
0, 7, 7, 1, 152064, 6e53097e56f680cb658d63100e7736f7
0, 8, 8, 1, 152064, 1a407c3c8ea1d5245ae68c5ce7de70e1
0, 9, 9, 1, 152064, 6cbca24912cadf09b20be74f14e359c9
#tb 0: 1001/30000
0, 0, 0, 1, 152064, a2e5c820fd9733e18f9349fb658ca281
0, 1, 1, 1, 152064, f719d0be18d16a448b4e7da3e2d9bf28
0, 2, 2, 1, 152064, 83ee8ebc0ca796782a2376a76f2ffc26
0, 3, 3, 1, 152064, 7cf5afdbc229e1af50a5377cfc23d831
0, 4, 4, 1, 152064, 44244e896e0362f6376ba5afa563ba8b
0, 5, 5, 1, 152064, df5f518d44eb6cb91b2df5a30d27ef82
0, 6, 6, 1, 152064, 43cc3f151b8337aca7ee659c8abeb783
0, 7, 7, 1, 152064, 4e89573470d9b97464e10806fc81aa8b
0, 8, 8, 1, 152064, 62e0ba70f07ece8d85372f0a42e83a9a
0, 9, 9, 1, 152064, 45ac2928acb11326f6c4a21401f3609c
#tb 0: 1001/30000
0, 0, 0, 1, 96, 52def242c36123e5a8f5f53d6a971399
0, 1, 1, 1, 96, 79c93360fbd47179400414bbfee0901c
0, 2, 2, 1, 96, c3b1947c79537baa7838905276276a91
0, 3, 3, 1, 96, 20f35e501bdee0bc63e87b9240265c25
0, 4, 4, 1, 96, 5e8f1c464bafd54833c51860906b5368
0, 5, 5, 1, 96, f57b592600dfc99e634a083278af769a
0, 6, 6, 1, 96, 7b02191f85590cbad3f148c7b92d6436
0, 7, 7, 1, 96, b0a1c9870447a1744f64cd4087ef55ee
0, 8, 8, 1, 96, c82712b1ba7a95efb67cbdde0ad708b6
0, 9, 9, 1, 96, 89f4539f8d7a7b45a91fd2f46335988e
#tb 0: 1001/30000
0, 0, 0, 1, 120, ea3e0f807304b0eb2d3e329b0124f75c
0, 1, 1, 1, 120, 8d13cf682d63e7eb13094f55d67fc458
0, 2, 2, 1, 120, e729cc6c3684c94a8f6118c618efc3ea
0, 3, 3, 1, 120, ac43a0ace8e4112e877c2491ecc14fb5
0, 4, 4, 1, 120, 53695f90b88d8e8cb838f0faec3238d3
0, 5, 5, 1, 120, 40afd1c4dfd4a2e3b31631c46d252bcc
0, 6, 6, 1, 120, 2b656f76f2e84d2f82d9bda2b5be94d3
0, 7, 7, 1, 120, b22f004d678d047bc401be5e040cf883
0, 8, 8, 1, 120, 57c840319abfb9c31013fbde54de3fb0
0, 9, 9, 1, 120, 0f3dfc156216d7cfb6fd1d8c77dadab9
#tb 0: 1001/30000
0, 0, 0, 1, 192, 0553e56a9d89aea496421885aab491f5
0, 1, 1, 1, 192, b2a14cf676f7ebf3c50450050f76ad16
0, 2, 2, 1, 192, a308d981e09b50571fb0c8ebdcefe505
0, 3, 3, 1, 192, d592ec625a0ac0373e82610c3eed9864
0, 4, 4, 1, 192, acd19642455e643023b4fb882c3891ba
0, 5, 5, 1, 192, 5af5390fd8c29b795e0ddf83f3f34284
0, 6, 6, 1, 192, 473505aa2a76231725cf2107d6c9dbef
0, 7, 7, 1, 192, 84860db6887e320f2d64f80cf0032e57
0, 8, 8, 1, 192, 408e9cf60e99ae99d204ff08f3196d1a
0, 9, 9, 1, 192, d8af96b79258f9382e911ed38340bdf5
#tb 0: 1001/30000
0, 0, 0, 1, 216, 4c41f93b1b280b37bc77d7047435eaa4
0, 1, 1, 1, 216, c9c80fdba2ebc2b8c3490ae35e34f84f
0, 2, 2, 1, 216, 089d86acb3263fa5ef4f591a7f44556d
0, 3, 3, 1, 216, 938fca6d93b83484144f5054e4838a41
0, 4, 4, 1, 216, e0592e2ac9f5e09525ce0d3904cadf47
0, 5, 5, 1, 216, ea43ff5d1330986e60c08567262ea764
0, 6, 6, 1, 216, 08b40fe109ee90188f1cba9bbb1b376e
0, 7, 7, 1, 216, b067068a2a7e36d5c5b5b405a1e73a18
0, 8, 8, 1, 216, 9cf2d350296288803434b7451bd2be85
0, 9, 9, 1, 216, 3c785e21dc228d6396738fbfcb470289
#tb 0: 1001/30000
0, 0, 0, 1, 384, f92a7777fd69aa2f2914d9a41c4828ba
0, 1, 1, 1, 384, 62e1cc73487d2249a88a60e35a22d9c7
0, 2, 2, 1, 384, aa2619b605cb65eda15fdd99d5775550
0, 3, 3, 1, 384, e6f0a491c543b835d0cefe5ca62c3dbe
0, 4, 4, 1, 384, 361be1a06913c398f09494ca1b2d288f
0, 5, 5, 1, 384, 0497bf849a973357c0ccb8d43f5bd8b4
0, 6, 6, 1, 384, 5ac6ac523147c409dd00820622161dd7
0, 7, 7, 1, 384, 7d07245574a46c524360f09be29a5f19
0, 8, 8, 1, 384, fcfa7fbcaf42f81e4e34a4ee5a029ca1
0, 9, 9, 1, 384, 336e3fe4f15d3d6c82d82b1855dcfeb4
#tb 0: 1001/30000
0, 0, 0, 1, 408, f3f2cd8f157466ff23dace85d77367ce
0, 1, 1, 1, 408, 639d9b70a14062e95559c12d2b597f91
0, 2, 2, 1, 408, b2ee07a6656af583f19593229fa11848
0, 3, 3, 1, 408, 74e3b5ab4c798a0afe745694e871bbd5
0, 4, 4, 1, 408, 35f1c30d0f8678f319a392a6c53b5989
0, 5, 5, 1, 408, 07e2b4c0b92a394bfb11124fe80476f0
0, 6, 6, 1, 408, 7864bd20dfc5280e5f027d67ea22bf30
0, 7, 7, 1, 408, 10a2925a7b91dfa9b82de76069388fd4
0, 8, 8, 1, 408, 79cc7f7a149e8d6e04e065f75e63733c
0, 9, 9, 1, 408, 6453d10d97532d9bb03f7c06cba9fca0
#tb 0: 1001/30000
0, 0, 0, 1, 768, 764bd02b781a38c621a109c12f3d9393
0, 1, 1, 1, 768, 79496bd2b9212026af816b3b7a0587d5
0, 2, 2, 1, 768, 2a3afd47ba3d075033fd94d5c3746c45
0, 3, 3, 1, 768, fca00cad8d37a6646337baebadd0ca31
0, 4, 4, 1, 768, aca376fb3f8a5ef670ecc2430037262a
0, 5, 5, 1, 768, 7e6c8d96d1e24855c3e380f1bf2ce02c
0, 6, 6, 1, 768, 09e051241972969d439f27f324d78490
0, 7, 7, 1, 768, 2566b2a425caaba41305bf04ff10ea01
0, 8, 8, 1, 768, db3995bedee42ada1b4ee63c339daf1b
0, 9, 9, 1, 768, b00b8f1bf4fd907f0487738f5b5442c6
#tb 0: 1001/30000
0, 0, 0, 1, 792, df20e8df89449fe50bb610e95a449a95
0, 1, 1, 1, 792, 18f1a66d463274d1b0489f3a50e86857
0, 2, 2, 1, 792, b0cc102875a94c9a92e53826617adbe9
0, 3, 3, 1, 792, dfece7c17b4b149283ef51bdc1bd440e
0, 4, 4, 1, 792, 6e346884f67be259fcabe493109cb63c
0, 5, 5, 1, 792, 6d282127311eb2d958377490d7cb77f0
0, 6, 6, 1, 792, 637ac8b14ca5ddbaf7b8910406c3cd08
0, 7, 7, 1, 792, e7980f3fcb36969da0d218c4389fa9e8
0, 8, 8, 1, 792, 730a1c95b9fb165f6e1a2f33a0d25de0
0, 9, 9, 1, 792, 7bd8424d0783b1c8ad617e17408371bb
#tb 0: 1001/30000
0, 0, 0, 1, 120, e1e66a88615da98523ef887f1463fc42
0, 1, 1, 1, 120, 549842fa98c8faf572882d38b0aae390
0, 2, 2, 1, 120, 17ee85785517705fdc78c6122a4b2548
0, 3, 3, 1, 120, 1143391d419dac30a6c11f366157c974
0, 4, 4, 1, 120, b62d2a962c4c36809ef75a610106715c
0, 5, 5, 1, 120, e6f143ca33fbc0e776bb149950cdedff
0, 6, 6, 1, 120, 01716a1077ec66df00474fd4510d2789
0, 7, 7, 1, 120, 8cb5b6a865fa2cbb15f0d7736fda88a6
0, 8, 8, 1, 120, 0fb9fd883e895a540fe1704dddbbab04
0, 9, 9, 1, 120, 150a3b99aa24ef102c92f87c8adb4386
#tb 0: 1001/30000
0, 0, 0, 1, 150, 083d638f2e147295d817bb14fff5e4f4
0, 1, 1, 1, 150, 6dbdc445b6fd6bb99f2025cc2a40977e
0, 2, 2, 1, 150, 41714089383b181d64fbfa7de5904608
0, 3, 3, 1, 150, 11fdb8465e1599f7a9227706646d2cba
0, 4, 4, 1, 150, 907876b3342a10040db0851a936af4e3
0, 5, 5, 1, 150, e7b18d47d06b25de205d873d3d941640
0, 6, 6, 1, 150, 523ce7413c8da7f6a657a9b661f36c44
0, 7, 7, 1, 150, 23caff863af875c66c903662a3e1e6a1
0, 8, 8, 1, 150, ed4cc5557203e5b7a119112ee9ceb00b
0, 9, 9, 1, 150, 4bb78a996be3188888d1c60e11a08e1b
#tb 0: 1001/30000
0, 0, 0, 1, 240, fab07d6209d2413e0a434e1aaaa12154
0, 1, 1, 1, 240, f9ffffdb96f98527ba2e553d1265edbb
0, 2, 2, 1, 240, 56a992264cf7da2b23dd97435e9d0365
0, 3, 3, 1, 240, b1db980423d8004bd45a789b02b92a65
0, 4, 4, 1, 240, b29496aedc7026566367b634f55ebb28
0, 5, 5, 1, 240, 2bc9def672da4a2fc17cbd669e2b8081
0, 6, 6, 1, 240, 8c54721514cdf577a52a8668b9135f13
0, 7, 7, 1, 240, 2efab81d5e039d82b3bc7b0303b022c4
0, 8, 8, 1, 240, bd0f42b91b5d126fd0baec765b1096ad
0, 9, 9, 1, 240, c6bfea2735a629167bc6a7a7c76eb7f3
#tb 0: 1001/30000
0, 0, 0, 1, 270, 0e9182e214aae732d94d007e5fe44888
0, 1, 1, 1, 270, 2630e2674b5611d68218fddac08815e2
0, 2, 2, 1, 270, d5cdd7d6a3de17939f60bb60ef6877da
0, 3, 3, 1, 270, 29d1961096061029e78963fa82581eca
0, 4, 4, 1, 270, 5c2629f8aa59757f6b4aafa9f6cbcba1
0, 5, 5, 1, 270, 1f1a8b61e4fbd6222ddf42e9d0a07032
0, 6, 6, 1, 270, cfb9771190ac2d0129907102d6abb63f
0, 7, 7, 1, 270, cd98dd856ba573a26a943cbe53221f26
0, 8, 8, 1, 270, ca13c161f067c4a4ce22bd58a2aca55b
0, 9, 9, 1, 270, de4bd1a474a76a35b796a5fc45b4f893
#tb 0: 1001/30000
0, 0, 0, 1, 480, 622e6407a051ea08706394d03330ffbf
0, 1, 1, 1, 480, 1841a0daf7c3ef7be94e01fdb1d3968a
0, 2, 2, 1, 480, 37790e6cb2415f7add0ac5d3ab354755
0, 3, 3, 1, 480, 91485880e17c292096a7335566d3648f
0, 4, 4, 1, 480, eb6f74983d5fd13d6bd90afbce8836e1
0, 5, 5, 1, 480, 0069ab5ff7f0d4d601f7d0f9b7a08338
0, 6, 6, 1, 480, dbf04254765f7497070387e8c34895c6
0, 7, 7, 1, 480, 410a9b2d9855b2c29618070994adae96
0, 8, 8, 1, 480, 7e7f34effd90209f29f1b9ae01488b3b
0, 9, 9, 1, 480, 471530f74082c01c9b0f1fcf3d240d77
#tb 0: 1001/30000
0, 0, 0, 1, 510, bfeeaf51f972fd0dfe9ee757083cbb54
0, 1, 1, 1, 510, 10cd4ed6d762004846412d9cd0caa407
0, 2, 2, 1, 510, 04cca4008d656ed180de88dd2ddb4f21
0, 3, 3, 1, 510, ec777e377836895748c06849fa35ed2d
0, 4, 4, 1, 510, b55633d0f9239dff3e45a4abce4a35a7
0, 5, 5, 1, 510, 063c3ab4b4c599942c3a8a5b7bfe5029
0, 6, 6, 1, 510, 07b920169d32b5fc51d5b9ae16fef5bf
0, 7, 7, 1, 510, 8d49e727db9d3072b5ab7bab2133d9be
0, 8, 8, 1, 510, 17441437203447e946a57d2f96966332
0, 9, 9, 1, 510, 5d3f14af0e5cd81d0c7d2059f13efa5a
#tb 0: 1001/30000
0, 0, 0, 1, 960, 835254d0eecb17bed1f2b0f3a1638165
0, 1, 1, 1, 960, c0c95ce9890eab339a0e0f8b26cb095c
0, 2, 2, 1, 960, f0337d645ade07cb716952b0d19352e8
0, 3, 3, 1, 960, 7e3deb21cb3f0ead90c8af94464cde14
0, 4, 4, 1, 960, c6b1ca6cfce358c411c0637c581157c8
0, 5, 5, 1, 960, 10fce3f11f1ce90286ff4d74fe44fcfd
0, 6, 6, 1, 960, ee0565a1f121bc905a35550619127a50
0, 7, 7, 1, 960, 0624b601d379616eb792c94be60b6c91
0, 8, 8, 1, 960, a1bb79cdf347548f1103f580f2b6930f
0, 9, 9, 1, 960, 40e96e16c7e065aa7932e5aa57f32398
#tb 0: 1001/30000
0, 0, 0, 1, 990, 1bd8b2d3bf679c4b925780bf82e12fae
0, 1, 1, 1, 990, a0254b4cd4928fe1080cd6f8828288a9
0, 2, 2, 1, 990, e416e99644cca481dc2806708d716ecb
0, 3, 3, 1, 990, b1ed3203ffc77ed814f1cda7bfe721d2
0, 4, 4, 1, 990, 0ff7b9d84765f7b0b0650775ba72b334
0, 5, 5, 1, 990, 8b6cd91e035bad19b46b132bd411231d
0, 6, 6, 1, 990, c714759a9a64402043ad00e5677c954c
0, 7, 7, 1, 990, 8e4738010b724ce66bcd0a5d5afcfbc1
0, 8, 8, 1, 990, 998a7aab8ed94f4b69bed39fb487f8d5
0, 9, 9, 1, 990, 9964683a15a65c032631a4f608e6009b
#tb 0: 1001/30000
0, 0, 0, 1, 192, 68dccd167f9aa18df0840ebb8715eb68
0, 1, 1, 1, 192, 65c90bb99fdbee7abf21031d34cb18dc
0, 2, 2, 1, 192, 9ef1feb2dcbd4d73f3ee84e9e1cd2668
0, 3, 3, 1, 192, b6281f7c88e9aa132d3902046f8cde5a
0, 4, 4, 1, 192, 4b439b716a294bddf9f56a229705907b
0, 5, 5, 1, 192, d42c0a6f0d24522c90bc2233bc1df2c7
0, 6, 6, 1, 192, 74b763a5a12c4c4a581efb1818a92970
0, 7, 7, 1, 192, 0c3a0916ddfda5abdd3ac382f036e71f
0, 8, 8, 1, 192, 26ff590e8ae726f70e8b36f5eaee7a19
0, 9, 9, 1, 192, 30fa5810995d7132387ea585c4a1cc3a
#tb 0: 1001/30000
0, 0, 0, 1, 240, fb3cad61d7d9eb511758dbf87dd8abe1
0, 1, 1, 1, 240, 4fbc1aa5559c8db2930803893bd6ba75
0, 2, 2, 1, 240, 2d8e2ee04dcc6097ca9e3f27070cdcc8
0, 3, 3, 1, 240, 05d419f1322855ba3620665b68ce9910
0, 4, 4, 1, 240, b004f8d88cb2c94f4e9a13cfa5bd480a
0, 5, 5, 1, 240, 9d9dec90e2213c0411939131aa9adf7f
0, 6, 6, 1, 240, a00874356ff1b1e9da1a400424661f8d
0, 7, 7, 1, 240, fda587eb6323cd98c773f05905ac1794
0, 8, 8, 1, 240, 781c63d221a04d8130806c799d16753a
0, 9, 9, 1, 240, f346e311829f3789dc5a94da48ada5f4
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment