13306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/* ------------------------------------------------------------------
23306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * Copyright (C) 1998-2009 PacketVideo
33306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong *
43306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * Licensed under the Apache License, Version 2.0 (the "License");
53306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * you may not use this file except in compliance with the License.
63306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * You may obtain a copy of the License at
73306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong *
83306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong *      http://www.apache.org/licenses/LICENSE-2.0
93306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong *
103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * Unless required by applicable law or agreed to in writing, software
113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * distributed under the License is distributed on an "AS IS" BASIS,
123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * express or implied.
143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * See the License for the specific language governing permissions
153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * and limitations under the License.
163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong * -------------------------------------------------------------------
173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong */
183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#include    "mp4dec_api.h"
193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#include    "mp4def.h"
203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#include    "mp4lib_int.h"
213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#include    "vlc_dec_tab.h"
223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#include    "max_level.h"
233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int intra_max_level[2][NCOEFF_BLOCK] =
263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 10,  5,  4,  3,  3,  3,  3,
283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        2,  2,  1,  1,  1,  1,  1,  0,
293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    },
363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8,  3,  2,  2,  2,  2,  2,  1,
383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  1,  1,  1,  1,  1,  1,  1,
393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  1,  1,  1,  1,  0,  0,  0,
403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0,
413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0,
423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0,
433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0,
443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0
453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    }
463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int inter_max_level[2][NCOEFF_BLOCK] =
503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12,  6,  4,  3,  3,  3,  3,  2,
523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        2,  2,  2,  1,  1,  1,  1,  1,
533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        1,  1,  1,  1,  1,  1,  1,  1,
543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        1,  1,  1,  0,  0,  0,  0,  0,
553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0,
583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong        0,  0,  0,  0,  0,  0,  0,  0},
593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3,  2,  1,  1,  1,  1,  1,  1,
613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  1,  1,  1,  1,  1,  1,  1,
623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  1,  1,  1,  1,  1,  1,  1,
633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  1,  1,  1,  1,  1,  1,  1,
643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  1,  1,  1,  1,  1,  1,  1,
653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     1,  0,  0,  0,  0,  0,  0,  0,
663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0,
673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong     0,  0,  0,  0,  0,  0,  0,  0}
683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int intra_max_run0[28] = { 999, 14,  9,  7,  3,  2,  1,
723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                 1,  1,  1,  1,  0,  0,  0,
733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                 0,  0,  0,  0,  0,  0,  0,
743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                 0,  0,  0,  0,  0,  0,  0
753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                               };
763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int intra_max_run1[9] = { 999, 20,  6,
793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                1,  0,  0,
803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                0,  0,  0
813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                              };
823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int inter_max_run0[13] = { 999,
843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                 26, 10,  6,  2,  1,  1,
853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                                 0,  0,  0,  0,  0,  0
863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong                               };
873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int inter_max_run1[4] = { 999, 40,  1,  0 };
903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_TMNMVtab0[] =
923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 4}, { -3, 4}, {2, 3}, {2, 3}, { -2, 3}, { -2, 3}, {1, 2}, {1, 2}, {1, 2}, {1, 2},
943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -1, 2}, { -1, 2}, { -1, 2}, { -1, 2}
953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_TMNMVtab1[] =
983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 10}, { -12, 10}, {11, 10}, { -11, 10}, {10, 9}, {10, 9}, { -10, 9}, { -10, 9},
1003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 9}, {9, 9}, { -9, 9}, { -9, 9}, {8, 9}, {8, 9}, { -8, 9}, { -8, 9}, {7, 7}, {7, 7},
1013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, { -7, 7}, { -7, 7}, { -7, 7}, { -7, 7},
1023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -7, 7}, { -7, 7}, { -7, 7}, { -7, 7}, {6, 7}, {6, 7}, {6, 7}, {6, 7}, {6, 7}, {6, 7},
1033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 7}, {6, 7}, { -6, 7}, { -6, 7}, { -6, 7}, { -6, 7}, { -6, 7}, { -6, 7}, { -6, 7},
1043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -6, 7}, {5, 7}, {5, 7}, {5, 7}, {5, 7}, {5, 7}, {5, 7}, {5, 7}, {5, 7}, { -5, 7},
1053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -5, 7}, { -5, 7}, { -5, 7}, { -5, 7}, { -5, 7}, { -5, 7}, { -5, 7}, {4, 6}, {4, 6}, {4, 6},
1063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6},
1073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 6}, {4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6},
1083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}, { -4, 6}
1093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
1103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_TMNMVtab2[] =
1123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
1133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 12}, { -32, 12}, {31, 12}, { -31, 12}, {30, 11}, {30, 11}, { -30, 11}, { -30, 11},
1143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {29, 11}, {29, 11}, { -29, 11}, { -29, 11}, {28, 11}, {28, 11}, { -28, 11}, { -28, 11},
1153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 11}, {27, 11}, { -27, 11}, { -27, 11}, {26, 11}, {26, 11}, { -26, 11}, { -26, 11},
1163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {25, 11}, {25, 11}, { -25, 11}, { -25, 11}, {24, 10}, {24, 10}, {24, 10}, {24, 10},
1173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -24, 10}, { -24, 10}, { -24, 10}, { -24, 10}, {23, 10}, {23, 10}, {23, 10}, {23, 10},
1183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -23, 10}, { -23, 10}, { -23, 10}, { -23, 10}, {22, 10}, {22, 10}, {22, 10}, {22, 10},
1193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -22, 10}, { -22, 10}, { -22, 10}, { -22, 10}, {21, 10}, {21, 10}, {21, 10}, {21, 10},
1203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -21, 10}, { -21, 10}, { -21, 10}, { -21, 10}, {20, 10}, {20, 10}, {20, 10}, {20, 10},
1213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -20, 10}, { -20, 10}, { -20, 10}, { -20, 10}, {19, 10}, {19, 10}, {19, 10}, {19, 10},
1223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -19, 10}, { -19, 10}, { -19, 10}, { -19, 10}, {18, 10}, {18, 10}, {18, 10}, {18, 10},
1233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -18, 10}, { -18, 10}, { -18, 10}, { -18, 10}, {17, 10}, {17, 10}, {17, 10}, {17, 10},
1243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -17, 10}, { -17, 10}, { -17, 10}, { -17, 10}, {16, 10}, {16, 10}, {16, 10}, {16, 10},
1253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -16, 10}, { -16, 10}, { -16, 10}, { -16, 10}, {15, 10}, {15, 10}, {15, 10}, {15, 10},
1263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -15, 10}, { -15, 10}, { -15, 10}, { -15, 10}, {14, 10}, {14, 10}, {14, 10}, {14, 10},
1273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -14, 10}, { -14, 10}, { -14, 10}, { -14, 10}, {13, 10}, {13, 10}, {13, 10}, {13, 10},
1283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    { -13, 10}, { -13, 10}, { -13, 10}, { -13, 10}
1293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
1303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_MCBPCtab[] =
1323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
1333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {VLC_ERROR, 0},
1343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {255, 9}, {52, 9}, {36, 9}, {20, 9}, {49, 9}, {35, 8}, {35, 8}, {19, 8}, {19, 8},
1353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {50, 8}, {50, 8}, {51, 7}, {51, 7}, {51, 7}, {51, 7}, {34, 7}, {34, 7}, {34, 7},
1363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {34, 7}, {18, 7}, {18, 7}, {18, 7}, {18, 7}, {33, 7}, {33, 7}, {33, 7}, {33, 7},
1373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {17, 7}, {17, 7}, {17, 7}, {17, 7}, {4, 6}, {4, 6}, {4, 6}, {4, 6}, {4, 6},
1383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 6}, {4, 6}, {4, 6}, {48, 6}, {48, 6}, {48, 6}, {48, 6}, {48, 6}, {48, 6},
1393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {48, 6}, {48, 6}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5},
1403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5}, {3, 5},
1413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4},
1423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4},
1433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4},
1443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 4}, {32, 4}, {32, 4}, {32, 4}, {32, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4},
1453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4},
1463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4},
1473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4}, {16, 4},
1483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 4}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3}, {2, 3},
1553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3}, {2, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3}, {1, 3},
1623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3}, {1, 3}, {1, 3}
1633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
1643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#ifdef PV_ANNEX_IJKT_SUPPORT
1663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_MCBPCtab1[] =
1673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
1683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 11}, {5, 11},  {5, 11}, {5, 11}, {21, 13}, {21, 13}, {37, 13}, {53, 13},
1693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
1703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#endif
1713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_MCBPCtabintra[] =
1723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
1733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {VLC_ERROR, 0},
1743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {20, 6}, {36, 6}, {52, 6}, {4, 4}, {4, 4}, {4, 4},
1753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 4}, {19, 3}, {19, 3}, {19, 3}, {19, 3}, {19, 3},
1763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {19, 3}, {19, 3}, {19, 3}, {35, 3}, {35, 3}, {35, 3},
1773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {35, 3}, {35, 3}, {35, 3}, {35, 3}, {35, 3}, {51, 3},
1783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {51, 3}, {51, 3}, {51, 3}, {51, 3}, {51, 3}, {51, 3},
1793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {51, 3}
1803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
1813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCshorttab PV_CBPYtab[48] =
1853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
1863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {VLC_ERROR, 0}, {VLC_ERROR, 0}, {6, 6}, {9, 6}, {8, 5}, {8, 5}, {4, 5}, {4, 5},
1873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 5}, {2, 5}, {1, 5}, {1, 5}, {0, 4}, {0, 4}, {0, 4}, {0, 4},
1883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 4}, {12, 4}, {12, 4}, {12, 4}, {10, 4}, {10, 4}, {10, 4}, {10, 4},
1893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {14, 4}, {14, 4}, {14, 4}, {14, 4}, {5, 4}, {5, 4}, {5, 4}, {5, 4},
1903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 4}, {13, 4}, {13, 4}, {13, 4}, {3, 4}, {3, 4}, {3, 4}, {3, 4},
1913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 4}, {11, 4}, {11, 4}, {11, 4}, {7, 4}, {7, 4}, {7, 4}, {7, 4}
1923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
1933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
1963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab0[] =
1973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
1983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 1, 1, 7}, {0x7, 1, 1, 7}, {0x6, 1, 1, 7}, {0x5, 1, 1, 7}, {0xc, 1, 0, 7}, {0xb, 1, 0, 7},
1993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xa, 1, 0, 7}, {0x0, 4, 0, 7}, {0x4, 1, 1, 6}, {0x4, 1, 1, 6}, {0x3, 1, 1, 6}, {0x3, 1, 1, 6},
2003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 1, 6}, {0x2, 1, 1, 6}, {0x1, 1, 1, 6}, {0x1, 1, 1, 6}, {0x9, 1, 0, 6}, {0x9, 1, 0, 6},
2013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 1, 0, 6}, {0x8, 1, 0, 6}, {0x7, 1, 0, 6}, {0x7, 1, 0, 6}, {0x6, 1, 0, 6}, {0x6, 1, 0, 6},
2023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 2, 0, 6}, {0x1, 2, 0, 6}, {0x0, 3, 0, 6}, {0x0, 3, 0, 6}, {0x5, 1, 0, 5}, {0x5, 1, 0, 5},
2033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x5, 1, 0, 5}, {0x5, 1, 0, 5}, {0x4, 1, 0, 5}, {0x4, 1, 0, 5}, {0x4, 1, 0, 5}, {0x4, 1, 0, 5},
2043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x3, 1, 0, 5}, {0x3, 1, 0, 5}, {0x3, 1, 0, 5}, {0x3, 1, 0, 5}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4},
2053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4},
2063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3},
2123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3},
2133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3}, {0x1, 1, 0, 3},
2143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 0, 4}, {0x2, 1, 0, 4}, {0x2, 1, 0, 4}, {0x2, 1, 0, 4}, {0x2, 1, 0, 4}, {0x2, 1, 0, 4},
2153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 0, 4}, {0x2, 1, 0, 4}, {0x0, 2, 0, 4}, {0x0, 2, 0, 4}, {0x0, 2, 0, 4}, {0x0, 2, 0, 4},
2163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 4}, {0x0, 2, 0, 4}, {0x0, 2, 0, 4}, {0x0, 2, 0, 4}
2173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
2183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
2193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
2203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab1[] =
2213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
2223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 9, 0, 10}, {0x0, 8, 0, 10}, {0x18, 1, 1, 9}, {0x18, 1, 1, 9}, {0x17, 1, 1, 9}, {0x17, 1, 1, 9},
2233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x16, 1, 1, 9}, {0x16, 1, 1, 9}, {0x15, 1, 1, 9}, {0x15, 1, 1, 9}, {0x14, 1, 1, 9}, {0x14, 1, 1, 9},
2243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x13, 1, 1, 9}, {0x13, 1, 1, 9}, {0x12, 1, 1, 9}, {0x12, 1, 1, 9}, {0x11, 1, 1, 9}, {0x11, 1, 1, 9},
2253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 1, 9}, {0x0, 2, 1, 9}, {0x16, 1, 0, 9}, {0x16, 1, 0, 9}, {0x15, 1, 0, 9}, {0x15, 1, 0, 9},
2263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x14, 1, 0, 9}, {0x14, 1, 0, 9}, {0x13, 1, 0, 9}, {0x13, 1, 0, 9}, {0x12, 1, 0, 9}, {0x12, 1, 0, 9},
2273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x11, 1, 0, 9}, {0x11, 1, 0, 9}, {0x10, 1, 0, 9}, {0x10, 1, 0, 9}, {0xf, 1, 0, 9}, {0xf, 1, 0, 9},
2283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x4, 2, 0, 9}, {0x4, 2, 0, 9}, {0x3, 2, 0, 9}, {0x3, 2, 0, 9}, {0x0, 7, 0, 9}, {0x0, 7, 0, 9},
2293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 6, 0, 9}, {0x0, 6, 0, 9}, {0x10, 1, 1, 8}, {0x10, 1, 1, 8}, {0x10, 1, 1, 8}, {0x10, 1, 1, 8},
2303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xf, 1, 1, 8}, {0xf, 1, 1, 8}, {0xf, 1, 1, 8}, {0xf, 1, 1, 8}, {0xe, 1, 1, 8}, {0xe, 1, 1, 8},
2313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xe, 1, 1, 8}, {0xe, 1, 1, 8}, {0xd, 1, 1, 8}, {0xd, 1, 1, 8}, {0xd, 1, 1, 8}, {0xd, 1, 1, 8},
2323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xc, 1, 1, 8}, {0xc, 1, 1, 8}, {0xc, 1, 1, 8}, {0xc, 1, 1, 8}, {0xb, 1, 1, 8}, {0xb, 1, 1, 8},
2333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xb, 1, 1, 8}, {0xb, 1, 1, 8}, {0xa, 1, 1, 8}, {0xa, 1, 1, 8}, {0xa, 1, 1, 8}, {0xa, 1, 1, 8},
2343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0xe, 1, 0, 8}, {0xe, 1, 0, 8},
2353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xe, 1, 0, 8}, {0xe, 1, 0, 8}, {0xd, 1, 0, 8}, {0xd, 1, 0, 8}, {0xd, 1, 0, 8}, {0xd, 1, 0, 8},
2363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 2, 0, 8}, {0x2, 2, 0, 8}, {0x2, 2, 0, 8}, {0x2, 2, 0, 8}, {0x1, 3, 0, 8}, {0x1, 3, 0, 8},
2373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 3, 0, 8}, {0x1, 3, 0, 8}, {0x0, 5, 0, 8}, {0x0, 5, 0, 8}, {0x0, 5, 0, 8}, {0x0, 5, 0, 8}
2383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
2393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
2403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
2413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab2[] =
2423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
2433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 2, 1, 11}, {0x1, 2, 1, 11}, {0x0, 3, 1, 11}, {0x0, 3, 1, 11}, {0x0, 0xb, 0, 11}, {0x0, 0xb, 0, 11},
2443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0xa, 0, 11}, {0x0, 0xa, 0, 11}, {0x1c, 1, 1, 10}, {0x1c, 1, 1, 10}, {0x1c, 1, 1, 10}, {0x1c, 1, 1, 10},
2453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 1, 1, 10}, {0x1b, 1, 1, 10}, {0x1b, 1, 1, 10}, {0x1b, 1, 1, 10}, {0x1a, 1, 1, 10}, {0x1a, 1, 1, 10},
2463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1a, 1, 1, 10}, {0x1a, 1, 1, 10}, {0x19, 1, 1, 10}, {0x19, 1, 1, 10}, {0x19, 1, 1, 10}, {0x19, 1, 1, 10},
2473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x9, 2, 0, 10}, {0x9, 2, 0, 10}, {0x9, 2, 0, 10}, {0x9, 2, 0, 10}, {0x8, 2, 0, 10}, {0x8, 2, 0, 10},
2483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 2, 0, 10}, {0x8, 2, 0, 10}, {0x7, 2, 0, 10}, {0x7, 2, 0, 10}, {0x7, 2, 0, 10}, {0x7, 2, 0, 10},
2493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x6, 2, 0, 10}, {0x6, 2, 0, 10}, {0x6, 2, 0, 10}, {0x6, 2, 0, 10}, {0x5, 2, 0, 10}, {0x5, 2, 0, 10},
2503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x5, 2, 0, 10}, {0x5, 2, 0, 10}, {0x3, 3, 0, 10}, {0x3, 3, 0, 10}, {0x3, 3, 0, 10}, {0x3, 3, 0, 10},
2513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 3, 0, 10}, {0x2, 3, 0, 10}, {0x2, 3, 0, 10}, {0x2, 3, 0, 10}, {0x1, 4, 0, 10}, {0x1, 4, 0, 10},
2523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 4, 0, 10}, {0x1, 4, 0, 10}, {0x0, 0xc, 0, 11}, {0x0, 0xc, 0, 11}, {0x1, 5, 0, 11}, {0x1, 5, 0, 11},
2533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x17, 1, 0, 11}, {0x17, 1, 0, 11}, {0x18, 1, 0, 11}, {0x18, 1, 0, 11}, {0x1d, 1, 1, 11}, {0x1d, 1, 1, 11},
2543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1e, 1, 1, 11}, {0x1e, 1, 1, 11}, {0x1f, 1, 1, 11}, {0x1f, 1, 1, 11}, {0x20, 1, 1, 11}, {0x20, 1, 1, 11},
2553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 6, 0, 12}, {0x2, 4, 0, 12}, {0x4, 3, 0, 12}, {0x5, 3, 0, 12}, {0x6, 3, 0, 12}, {0xa, 2, 0, 12},
2563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x19, 1, 0, 12}, {0x1a, 1, 0, 12}, {0x21, 1, 1, 12}, {0x22, 1, 1, 12}, {0x23, 1, 1, 12}, {0x24, 1, 1, 12},
2573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x25, 1, 1, 12}, {0x26, 1, 1, 12}, {0x27, 1, 1, 12}, {0x28, 1, 1, 12}, {0xbf, 0xf, 1, 7},
2583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7},
2593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7},
2603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7},
2613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7},
2623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7}, {0xbf, 0xf, 1, 7},
2633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xbf, 0xf, 1, 7}
2643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
2653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
2663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/* New tables for Intra luminance blocks */
2673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
2683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab3[] =
2693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
2703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x4, 1, 1, 7}, {0x3, 1, 1, 7}, {0x6, 1, 0, 7}, {0x5, 1, 1, 7},
2713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x7, 1, 0, 7}, {0x2, 2, 0, 7}, {0x1, 3, 0, 7}, {0x0, 9, 0, 7},
2723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 1, 6}, {0x0, 2, 1, 6}, {0x5, 1, 0, 6}, {0x5, 1, 0, 6},
2733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 1, 6}, {0x2, 1, 1, 6}, {0x1, 1, 1, 6}, {0x1, 1, 1, 6},
2743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x4, 1, 0, 6}, {0x4, 1, 0, 6}, {0x3, 1, 0, 6}, {0x3, 1, 0, 6},
2753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 8, 0, 6}, {0x0, 8, 0, 6}, {0x0, 7, 0, 6}, {0x0, 7, 0, 6},
2763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 2, 0, 6}, {0x1, 2, 0, 6}, {0x0, 6, 0, 6}, {0x0, 6, 0, 6},
2773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 0, 5}, {0x2, 1, 0, 5}, {0x2, 1, 0, 5}, {0x2, 1, 0, 5},
2783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 5, 0, 5}, {0x0, 5, 0, 5}, {0x0, 5, 0, 5}, {0x0, 5, 0, 5},
2793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 4, 0, 5}, {0x0, 4, 0, 5}, {0x0, 4, 0, 5}, {0x0, 4, 0, 5},
2803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4},
2813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4},
2823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
2903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
2913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
2923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
2933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
2943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4},
2953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4},
2963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4},
2973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4}
2983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
2993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
3003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab4[] =
3013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
3023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x12, 0, 10}, {0x0, 0x11, 0, 10}, {0xe, 1, 1, 9}, {0xe, 1, 1, 9},
3033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xd, 1, 1, 9}, {0xd, 1, 1, 9}, {0xc, 1, 1, 9}, {0xc, 1, 1, 9},
3043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xb, 1, 1, 9}, {0xb, 1, 1, 9}, {0xa, 1, 1, 9}, {0xa, 1, 1, 9},
3053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 2, 1, 9}, {0x1, 2, 1, 9}, {0x0, 4, 1, 9}, {0x0, 4, 1, 9},
3063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xc, 1, 0, 9}, {0xc, 1, 0, 9}, {0xb, 1, 0, 9}, {0xb, 1, 0, 9},
3073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x7, 2, 0, 9}, {0x7, 2, 0, 9}, {0x6, 2, 0, 9}, {0x6, 2, 0, 9},
3083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x5, 2, 0, 9}, {0x5, 2, 0, 9}, {0x3, 3, 0, 9}, {0x3, 3, 0, 9},
3093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 3, 0, 9}, {0x2, 3, 0, 9}, {0x1, 6, 0, 9}, {0x1, 6, 0, 9},
3103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 5, 0, 9}, {0x1, 5, 0, 9}, {0x0, 0x10, 0, 9}, {0x0, 0x10, 0, 9},
3113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x4, 2, 0, 9}, {0x4, 2, 0, 9}, {0x0, 0xf, 0, 9}, {0x0, 0xf, 0, 9},
3123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0xe, 0, 9}, {0x0, 0xe, 0, 9}, {0x0, 0xd, 0, 9}, {0x0, 0xd, 0, 9},
3133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 1, 1, 8}, {0x8, 1, 1, 8}, {0x8, 1, 1, 8}, {0x8, 1, 1, 8},
3143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x7, 1, 1, 8}, {0x7, 1, 1, 8}, {0x7, 1, 1, 8}, {0x7, 1, 1, 8},
3153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x6, 1, 1, 8}, {0x6, 1, 1, 8}, {0x6, 1, 1, 8}, {0x6, 1, 1, 8},
3163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 3, 1, 8}, {0x0, 3, 1, 8}, {0x0, 3, 1, 8}, {0x0, 3, 1, 8},
3173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xa, 1, 0, 8}, {0xa, 1, 0, 8}, {0xa, 1, 0, 8}, {0xa, 1, 0, 8},
3183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x9, 1, 0, 8}, {0x9, 1, 0, 8}, {0x9, 1, 0, 8}, {0x9, 1, 0, 8},
3193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 1, 0, 8}, {0x8, 1, 0, 8}, {0x8, 1, 0, 8}, {0x8, 1, 0, 8},
3203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x9, 1, 1, 8},
3213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x3, 2, 0, 8}, {0x3, 2, 0, 8}, {0x3, 2, 0, 8}, {0x3, 2, 0, 8},
3223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 4, 0, 8}, {0x1, 4, 0, 8}, {0x1, 4, 0, 8}, {0x1, 4, 0, 8},
3233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0xc, 0, 8}, {0x0, 0xc, 0, 8}, {0x0, 0xc, 0, 8}, {0x0, 0xc, 0, 8},
3243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0xb, 0, 8}, {0x0, 0xb, 0, 8}, {0x0, 0xb, 0, 8}, {0x0, 0xb, 0, 8},
3253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0xa, 0, 8}, {0x0, 0xa, 0, 8}, {0x0, 0xa, 0, 8}, {0x0, 0xa, 0, 8}
3263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
3273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
3283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab5[] =
3293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
3303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 7, 1, 11}, {0x0, 7, 1, 11}, {0x0, 6, 1, 11}, {0x0, 6, 1, 11},
3313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x16, 0, 11}, {0x0, 0x16, 0, 11}, {0x0, 0x15, 0, 11}, {0x0, 0x15, 0, 11},
3323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 2, 1, 10}, {0x2, 2, 1, 10}, {0x2, 2, 1, 10}, {0x2, 2, 1, 10},
3333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 3, 1, 10}, {0x1, 3, 1, 10}, {0x1, 3, 1, 10}, {0x1, 3, 1, 10},
3343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 5, 1, 10}, {0x0, 5, 1, 10}, {0x0, 5, 1, 10}, {0x0, 5, 1, 10},
3353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xd, 1, 0, 10}, {0xd, 1, 0, 10}, {0xd, 1, 0, 10}, {0xd, 1, 0, 10},
3363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x5, 3, 0, 10}, {0x5, 3, 0, 10}, {0x5, 3, 0, 10}, {0x5, 3, 0, 10},
3373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 2, 0, 10}, {0x8, 2, 0, 10}, {0x8, 2, 0, 10}, {0x8, 2, 0, 10},
3383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x4, 3, 0, 10}, {0x4, 3, 0, 10}, {0x4, 3, 0, 10}, {0x4, 3, 0, 10},
3393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x3, 4, 0, 10}, {0x3, 4, 0, 10}, {0x3, 4, 0, 10}, {0x3, 4, 0, 10},
3403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 4, 0, 10}, {0x2, 4, 0, 10}, {0x2, 4, 0, 10}, {0x2, 4, 0, 10},
3413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 7, 0, 10}, {0x1, 7, 0, 10}, {0x1, 7, 0, 10}, {0x1, 7, 0, 10},
3423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x14, 0, 10}, {0x0, 0x14, 0, 10}, {0x0, 0x14, 0, 10}, {0x0, 0x14, 0, 10},
3433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x13, 0, 10}, {0x0, 0x13, 0, 10}, {0x0, 0x13, 0, 10}, {0x0, 0x13, 0, 10},
3443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x17, 0, 11}, {0x0, 0x17, 0, 11}, {0x0, 0x18, 0, 11}, {0x0, 0x18, 0, 11},
3453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 8, 0, 11}, {0x1, 8, 0, 11}, {0x9, 2, 0, 11}, {0x9, 2, 0, 11},
3463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x3, 2, 1, 11}, {0x3, 2, 1, 11}, {0x4, 2, 1, 11}, {0x4, 2, 1, 11},
3473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xf, 1, 1, 11}, {0xf, 1, 1, 11}, {0x10, 1, 1, 11}, {0x10, 1, 1, 11},
3483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 0x19, 0, 12}, {0, 0x1a, 0, 12}, {0, 0x1b, 0, 12}, {1, 9, 0, 12},
3493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x6, 3, 0, 12}, {0x1, 0xa, 0, 12}, {0x2, 5, 0, 12}, {0x7, 3, 0, 12},
3503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xe, 1, 0, 12}, {0x0, 8, 1, 12}, {0x5, 2, 1, 12}, {0x6, 2, 1, 12},
3513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x11, 1, 1, 12}, {0x12, 1, 1, 12}, {0x13, 1, 1, 12}, {0x14, 1, 1, 12},
3523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7},
3593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}, {0x1b, 0xff, 0, 7}
3603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
3613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
3623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#ifdef PV_ANNEX_IJKT_SUPPORT
3633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab6[] =
3643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
3653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 3, 1, 7}, {0x4, 1, 1, 7}, {0x6, 1, 1, 7}, {0x5, 1, 1, 7}, {0x1, 3, 0, 7}, {0x2, 2, 0, 7},
3663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 9, 0, 7}, {0x5, 1, 0, 7}, {0x0, 2, 1, 6}, {0x0, 2, 1, 6}, {0x3, 1, 1, 6}, {0x3, 1, 1, 6},
3673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 1, 6}, {0x2, 1, 1, 6}, {0x1, 1, 1, 6}, {0x1, 1, 1, 6}, {0x0, 6, 0, 6}, {0x0, 6, 0, 6},
3683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 7, 0, 6}, {0x0, 7, 0, 6}, {0x0, 8, 0, 6}, {0x0, 8, 0, 6}, {0x4, 1, 0, 6}, {0x4, 1, 0, 6},
3693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 2, 0, 6}, {0x1, 2, 0, 6}, {0x3, 1, 0, 6}, {0x3, 1, 0, 6}, {0x2, 1, 0, 5}, {0x2, 1, 0, 5},
3703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 1, 0, 5}, {0x2, 1, 0, 5}, {0x0, 4, 0, 5}, {0x0, 4, 0, 5}, {0x0, 4, 0, 5}, {0x0, 4, 0, 5},
3713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 5, 0, 5}, {0x0, 5, 0, 5}, {0x0, 5, 0, 5}, {0x0, 5, 0, 5}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4},
3723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4}, {0x0, 1, 1, 4},
3733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
3743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
3753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
3763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
3773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 1, 0, 2},
3783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 1, 0, 2}, {0x0, 1, 0, 2}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
3793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
3803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3}, {0x0, 2, 0, 3},
3813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x0, 3, 0, 4},
3823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 3, 0, 4}, {0x0, 3, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4},
3833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4}, {0x1, 1, 0, 4}
3843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
3853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
3863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab7[] =
3873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
3883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xb, 1, 0, 10}, {0xa, 1, 0, 10}, {0x0, 5, 1, 9}, {0x0, 5, 1, 9}, {0x0, 6, 1, 9}, {0x0, 6, 1, 9},
3893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 2, 1, 9}, {0x1, 2, 1, 9}, {0x2, 2, 1, 9}, {0x2, 2, 1, 9}, {0xf, 1, 1, 9}, {0xf, 1, 1, 9},
3903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x10, 1, 1, 9}, {0x10, 1, 1, 9}, {0x12, 1, 1, 9}, {0x12, 1, 1, 9}, {0x11, 1, 1, 9}, {0x11, 1, 1, 9},
3913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xe, 1, 1, 9}, {0xe, 1, 1, 9}, {0x0, 13, 0, 9}, {0x0, 13, 0, 9}, {0x0, 14, 0, 9}, {0x0, 14, 0, 9},
3923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 15, 0, 9}, {0x0, 15, 0, 9}, {0x0, 16, 0, 9}, {0x0, 16, 0, 9}, {0x0, 17, 0, 9}, {0x0, 17, 0, 9},
3933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 18, 0, 9}, {0x0, 18, 0, 9}, {0x0, 11, 0, 9}, {0x0, 11, 0, 9}, {0x0, 12, 0, 9}, {0x0, 12, 0, 9},
3943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x5, 2, 0, 9}, {0x5, 2, 0, 9}, {0x4, 2, 0, 9}, {0x4, 2, 0, 9}, {0x9, 1, 0, 9}, {0x9, 1, 0, 9},
3953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 1, 0, 9}, {0x8, 1, 0, 9}, {0x0, 4, 1, 8}, {0x0, 4, 1, 8}, {0x0, 4, 1, 8}, {0x0, 4, 1, 8},
3963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x7, 1, 1, 8}, {0x7, 1, 1, 8}, {0x7, 1, 1, 8}, {0x7, 1, 1, 8}, {0x8, 1, 1, 8}, {0x8, 1, 1, 8},
3973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x8, 1, 1, 8}, {0x8, 1, 1, 8}, {0xd, 1, 1, 8}, {0xd, 1, 1, 8}, {0xd, 1, 1, 8}, {0xd, 1, 1, 8},
3983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xc, 1, 1, 8}, {0xc, 1, 1, 8}, {0xc, 1, 1, 8}, {0xc, 1, 1, 8}, {0xb, 1, 1, 8}, {0xb, 1, 1, 8},
3993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xb, 1, 1, 8}, {0xb, 1, 1, 8}, {0xa, 1, 1, 8}, {0xa, 1, 1, 8}, {0xa, 1, 1, 8}, {0xa, 1, 1, 8},
4003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x9, 1, 1, 8}, {0x0, 10, 0, 8}, {0x0, 10, 0, 8},
4013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 10, 0, 8}, {0x0, 10, 0, 8}, {0x6, 1, 0, 8}, {0x6, 1, 0, 8}, {0x6, 1, 0, 8}, {0x6, 1, 0, 8},
4023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x3, 2, 0, 8}, {0x3, 2, 0, 8}, {0x3, 2, 0, 8}, {0x3, 2, 0, 8}, {0x1, 4, 0, 8}, {0x1, 4, 0, 8},
4033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 4, 0, 8}, {0x1, 4, 0, 8}, {0x7, 1, 0, 8}, {0x7, 1, 0, 8}, {0x7, 1, 0, 8}, {0x7, 1, 0, 8}
4043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
4053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
4063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
4073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 PV_DCT3Dtab8[] =
4083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
4093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x13, 0x1, 1, 11}, {0x13, 0x1, 1, 11}, {0x14, 0x1, 1, 11}, {0x14, 0x1, 1, 11}, {0x9, 0x2, 0, 11}, {0x9, 0x2, 0, 11},
4103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x4, 0x3, 0, 11}, {0x4, 0x3, 0, 11}, {0x0, 0x7, 1, 10}, {0x0, 0x7, 1, 10}, {0x0, 0x7, 1, 10}, {0x0, 0x7, 1, 10},
4113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 0x3, 1, 10}, {0x1, 0x3, 1, 10}, {0x1, 0x3, 1, 10}, {0x1, 0x3, 1, 10}, {0x3, 0x2, 1, 10}, {0x3, 0x2, 1, 10},
4123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x3, 0x2, 1, 10}, {0x3, 0x2, 1, 10}, {0x4, 0x2, 1, 10}, {0x4, 0x2, 1, 10}, {0x4, 0x2, 1, 10}, {0x4, 0x2, 1, 10},
4133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0xc, 0x1, 0, 10}, {0xc, 0x1, 0, 10}, {0xc, 0x1, 0, 10}, {0xc, 0x1, 0, 10}, {0x2, 0x4, 0, 10}, {0x2, 0x4, 0, 10},
4143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 0x4, 0, 10}, {0x2, 0x4, 0, 10}, {0x8, 0x2, 0, 10}, {0x8, 0x2, 0, 10}, {0x8, 0x2, 0, 10}, {0x8, 0x2, 0, 10},
4153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x7, 0x2, 0, 10}, {0x7, 0x2, 0, 10}, {0x7, 0x2, 0, 10}, {0x7, 0x2, 0, 10}, {0x6, 0x2, 0, 10}, {0x6, 0x2, 0, 10},
4163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x6, 0x2, 0, 10}, {0x6, 0x2, 0, 10}, {0x3, 0x3, 0, 10}, {0x3, 0x3, 0, 10}, {0x3, 0x3, 0, 10}, {0x3, 0x3, 0, 10},
4173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2, 0x3, 0, 10}, {0x2, 0x3, 0, 10}, {0x2, 0x3, 0, 10}, {0x2, 0x3, 0, 10}, {0x1, 0x5, 0, 10}, {0x1, 0x5, 0, 10},
4183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 0x5, 0, 10}, {0x1, 0x5, 0, 10}, {0xd, 0x1, 0, 11}, {0xd, 0x1, 0, 11}, {0x1, 0x6, 0, 11}, {0x1, 0x6, 0, 11},
4193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x14, 0, 11}, {0x0, 0x14, 0, 11}, {0x0, 0x13, 0, 11}, {0x0, 0x13, 0, 11}, {0x2, 0x3, 1, 11}, {0x2, 0x3, 1, 11},
4203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 0x4, 1, 11}, {0x1, 0x4, 1, 11}, {0x0, 0x9, 1, 11}, {0x0, 0x9, 1, 11}, {0x0, 0x8, 1, 11}, {0x0, 0x8, 1, 11},
4213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x1, 0x7, 0, 12}, {0x3, 0x4, 0, 12}, {0x5, 0x3, 0, 12}, {0x0, 0x19, 0, 12}, {0x0, 0x18, 0, 12}, {0x0, 0x17, 0, 12},
4223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x0, 0x16, 0, 12}, {0x0, 0x15, 0, 12}, {0x15, 0x1, 1, 12}, {0x16, 0x1, 1, 12}, {0x17, 0x1, 1, 12}, {0x7, 0x2, 1, 12},
4233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x6, 0x2, 1, 12}, {0x5, 0x2, 1, 12}, {0x3, 0x3, 1, 12}, {0x0, 0xa, 1, 12}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7},
4243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7},
4253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7},
4263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7},
4273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7},
4283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}, {0x2f, 0x3f, 1, 7}
4293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
4303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong#endif
4313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/* RVLC tables */
4323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst int ptrRvlcTab[11] = {0, 24, 46, 66, 84, 100, 114, 126, 134, 140, 144};
4333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
4343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 RvlcDCTtabIntra[170] = /* 00xxxx00 or 00xxxx01 */
4353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
4363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 255, 0, 5},    /* 0000 is escape code */
4373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 1, 0, 4},
4383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 1, 0, 5},
4393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 1, 0, 5},
4403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 1, 0, 6},
4413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 1, 0, 6},
4423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 1, 0, 7},
4433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 1, 0, 7},
4443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 1, 0, 8},
4453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 1, 0, 8},
4463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 1, 0, 9},
4473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 2, 0, 9},
4483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 1, 0, 10},
4493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 1, 0, 10},
4503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 1, 0, 11},
4513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 2, 0, 11},
4523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 2, 0, 12},
4533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 4, 0, 12},
4543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {14, 1, 0, 13},
4553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {15, 1, 0, 13},
4563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 1, 0, 14},
4573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {17, 1, 0, 14},
4583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 27, 0, 15},
4593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 9, 0, 15},
4603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 010xxxx00 or 010xxxx01 */
4613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 2, 0, 5},
4623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 4, 0, 5},
4633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 5, 0, 6},
4643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 6, 0, 6},
4653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 2, 0, 7},
4663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3, 0, 7},
4673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 2, 0, 8},
4683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 2, 0, 8},
4693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3, 0, 9},
4703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 3, 0, 9},
4713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 2, 0, 10},
4723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 2, 0, 10},
4733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 3, 0, 11},
4743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 3, 0, 11},
4753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 4, 0, 12},
4763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 4, 0, 12},
4773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 2, 0, 13},
4783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 3, 0, 13},
4793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {18, 1, 0, 14},
4803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 4, 0, 14},
4813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 5, 0, 15},
4823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 5, 0, 15},
4833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 0110xxxx00 or 0110xxxx01 */
4843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 1, 1, 6},
4853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 1, 1, 6},
4863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 7, 0, 7},
4873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 1, 1, 7},
4883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 4, 0, 8},
4893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 5, 0, 8},
4903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 6, 0, 9},
4913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 10, 0, 9},
4923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 2, 0, 10},
4933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 3, 0, 10},
4943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 3, 0, 11},
4953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 4, 0, 11},
4963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 5, 0, 12},
4973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 5, 0, 12},
4983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 3, 0, 13},
4993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 4, 0, 13},
5003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 5, 0, 14},
5013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 6, 0, 14},
5023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 4, 0, 15},
5033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 2, 0, 15},
5043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 01110xxxx00 or 01110xxxx01 */
5053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 1, 1, 7},
5063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 1, 1, 7},
5073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 8, 0, 8},
5083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 9, 0, 8},
5093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 11, 0, 9},
5103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 2, 1, 9},
5113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 4, 0, 10},
5123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 7, 0, 10},
5133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 5, 0, 11},
5143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 6, 0, 11},
5153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 10, 0, 12},
5163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 18, 0, 12},
5173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 6, 0, 13},
5183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 7, 0, 13},
5193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 6, 0, 14},
5203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 7, 0, 14},
5213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {19, 1, 0, 15},
5223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 5, 1, 15},
5233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 011110xxxx00 or 011110xxxx01 */
5243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 2, 1, 8},
5253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 1, 1, 8},
5263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {15, 1, 1, 9},
5273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 1, 1, 9},
5283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 12, 0, 10},
5293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 13, 0, 10},
5303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 8, 0, 11},
5313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 9, 0, 11},
5323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 19, 0, 12},
5333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 22, 0, 12},
5343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 8, 0, 13},
5353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 9, 0, 13},
5363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 8, 0, 14},
5373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 10, 0, 14},
5383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3, 1, 15},
5393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 2, 1, 15},
5403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 0111110xxxx00 or 0111110xxxx01 */
5413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {17, 1, 1, 9},
5423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {18, 1, 1, 9},
5433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 14, 0, 10},
5443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {21, 1, 1, 10},
5453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 15, 0, 11},
5463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 16, 0, 11},
5473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3, 1, 12},
5483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 2, 1, 12},
5493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 11, 0, 13},
5503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 20, 0, 13},
5513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 11, 0, 14},
5523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 12, 0, 14},
5533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {41, 1, 1, 15},
5543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {42, 1, 1, 15},
5553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 01111110xxxx00 or 01111110xxxx01 */
5563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {22, 1, 1, 10},
5573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {23, 1, 1, 10},
5583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 17, 0, 11},
5593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 3, 1, 11},
5603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 2, 1, 12},
5613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {29, 1, 1, 12},
5623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 21, 0, 13},
5633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 23, 0, 13},
5643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 13, 0, 14},
5653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 24, 0, 14},
5663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {43, 1, 1, 15},
5673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {44, 1, 1, 15},
5683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 011111110xxxx00 or 011111110xxxx01 */
5693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 2, 1, 11},
5703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {26, 1, 1, 11},
5713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {30, 1, 1, 12},
5723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {31, 1, 1, 12},
5733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 4, 1, 13},
5743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 2, 1, 13},
5753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 25, 0, 14},
5763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 26, 0, 14},
5773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 0111111110xxxx00 or 0111111110xxxx01 */
5783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 1, 1, 12},
5793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {33, 1, 1, 12},
5803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 2, 1, 13},
5813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 2, 1, 13},
5823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 5, 1, 14},
5833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 4, 1, 14},
5843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 01111111110xxxx00 or 01111111110xxxx01 */
5853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 2, 1, 13},
5863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 2, 1, 13},
5873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 2, 1, 14},
5883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 2, 1, 14},
5893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 011111111110xxxx00 or 011111111110xxxx01 */
5903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 2, 1, 14},
5913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {38, 1, 1, 14},
5923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 1xxxx10 or 1xxxx11 from 11 zeros to 0 zeros*/
5933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 1, 0, 3},
5943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 2, 0, 3},
5953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 3, 0, 4},
5963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 1, 1, 4},
5973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 1, 1, 5},
5983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 1, 1, 5},
5993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 1, 1, 6},
6003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 1, 1, 6},
6013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 1, 1, 7},
6023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 1, 1, 7},
6033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 1, 1, 8},
6043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {14, 1, 1, 8},
6053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {19, 1, 1, 9},
6063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {20, 1, 1, 9},
6073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {24, 1, 1, 10},
6083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {25, 1, 1, 10},
6093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 1, 1, 11},
6103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {28, 1, 1, 11},
6113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {34, 1, 1, 12},
6123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {35, 1, 1, 12},
6133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {36, 1, 1, 13},
6143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {37, 1, 1, 13},
6153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {39, 1, 1, 14},
6163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {40, 1, 1, 14}
6173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
6183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
6193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dongconst VLCtab2 RvlcDCTtabInter[170] = /* 00xxxx00 or 00xxxx01 */
6203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong{
6213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 255, 0, 5},    /* 0000 is escape code */
6223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 2, 0, 4},
6233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 3, 0, 5},
6243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 1, 0, 5},
6253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 2, 0, 6},
6263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 1, 0, 6},
6273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 4, 0, 7},
6283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 2, 0, 7},
6293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 5, 0, 8},
6303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 6, 0, 8},
6313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 7, 0, 9},
6323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 4, 0, 9},
6333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 8, 0, 10},
6343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 9, 0, 10},
6353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 10, 0, 11},
6363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 11, 0, 11},
6373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 12, 0, 12},
6383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 7, 0, 12},
6393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 13, 0, 13},
6403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 14, 0, 13},
6413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 17, 0, 14},
6423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 18, 0, 14},
6433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 19, 0, 15},
6443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 7, 0, 15},
6453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 010xxxx00 or 010xxxx01 */
6463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 1, 0, 5},
6473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 1, 0, 5},
6483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 1, 0, 6},
6493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 1, 0, 6},
6503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 1, 0, 7},
6513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 1, 0, 7},
6523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3, 0, 8},
6533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 2, 0, 8},
6543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3, 0, 9},
6553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 2, 0, 9},
6563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 5, 0, 10},
6573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 3, 0, 10},
6583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 6, 0, 11},
6593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 4, 0, 11},
6603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 5, 0, 12},
6613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 4, 0, 12},
6623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 15, 0, 13},
6633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 16, 0, 13},
6643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 9, 0, 14},
6653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 10, 0, 14},
6663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 5, 0, 15},
6673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 4, 0, 15},
6683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 0110xxxx00 or 0110xxxx01 */
6693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 1, 1, 6},
6703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 1, 1, 6},
6713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 1, 0, 7},
6723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 1, 1, 7},
6733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 2, 0, 8},
6743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 1, 0, 8},
6753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {15, 1, 0, 9},
6763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 1, 0, 9},
6773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 2, 0, 10},
6783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 2, 0, 10},
6793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 3, 0, 11},
6803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 3, 0, 11},
6813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 3, 0, 12},
6823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 3, 0, 12},
6833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 8, 0, 13},
6843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 5, 0, 13},
6853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 6, 0, 14},
6863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 7, 0, 14},
6873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {17, 2, 0, 15},
6883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {37, 1, 0, 15},
6893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 01110xxxx00 or 01110xxxx01 */
6903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 1, 1, 7},
6913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 1, 1, 7},
6923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 1, 0, 8},
6933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {14, 1, 0, 8},
6943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {17, 1, 0, 9},
6953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 2, 1, 9},
6963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 2, 0, 10},
6973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 2, 0, 10},
6983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 2, 0, 11},
6993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {21, 1, 0, 11},
7003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 2, 0, 12},
7013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 1, 0, 12},
7023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 4, 0, 13},
7033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 4, 0, 13},
7043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 6, 0, 14},
7053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 4, 0, 14},
7063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {38, 1, 0, 15},
7073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 5, 1, 15},
7083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 011110xxxx00 or 011110xxxx01 */
7093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 2, 1, 8},
7103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 1, 1, 8},
7113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {15, 1, 1, 9},
7123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 1, 1, 9},
7133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {18, 1, 0, 10},
7143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {19, 1, 0, 10},
7153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {22, 1, 0, 11},
7163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {23, 1, 0, 11},
7173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {28, 1, 0, 12},
7183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {29, 1, 0, 12},
7193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 3, 0, 13},
7203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 2, 0, 13},
7213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 3, 0, 14},
7223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 2, 0, 14},
7233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 3, 1, 15},
7243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 2, 1, 15},
7253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 0111110xxxx00 or 0111110xxxx01 */
7263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {17, 1, 1, 9},
7273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {18, 1, 1, 9},
7283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {20, 1, 0, 10},
7293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {21, 1, 1, 10},
7303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {24, 1, 0, 11},
7313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {25, 1, 0, 11},
7323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 3, 1, 12},
7333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {3, 2, 1, 12},
7343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {30, 1, 0, 13},
7353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {31, 1, 0, 13},
7363306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {14, 2, 0, 14},
7373306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {15, 2, 0, 14},
7383306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {41, 1, 1, 15},
7393306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {42, 1, 1, 15},
7403306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 01111110xxxx00 or 01111110xxxx01 */
7413306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {22, 1, 1, 10},
7423306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {23, 1, 1, 10},
7433306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {26, 1, 0, 11},
7443306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 3, 1, 11},
7453306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {4, 2, 1, 12},
7463306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {29, 1, 1, 12},
7473306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 1, 0, 13},
7483306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {33, 1, 0, 13},
7493306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {16, 2, 0, 14},
7503306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {34, 1, 0, 14},
7513306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {43, 1, 1, 15},
7523306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {44, 1, 1, 15},
7533306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 011111110xxxx00 or 011111110xxxx01 */
7543306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 2, 1, 11},
7553306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {26, 1, 1, 11},
7563306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {30, 1, 1, 12},
7573306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {31, 1, 1, 12},
7583306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 4, 1, 13},
7593306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 2, 1, 13},
7603306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {35, 1, 0, 14},
7613306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {36, 1, 0, 14},
7623306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 0111111110xxxx00 or 0111111110xxxx01 */
7633306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {32, 1, 1, 12},
7643306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {33, 1, 1, 12},
7653306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 2, 1, 13},
7663306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {7, 2, 1, 13},
7673306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 5, 1, 14},
7683306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 4, 1, 14},
7693306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 01111111110xxxx00 or 01111111110xxxx01 */
7703306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {8, 2, 1, 13},
7713306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {9, 2, 1, 13},
7723306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 2, 1, 14},
7733306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 2, 1, 14},
7743306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 011111111110xxxx00 or 011111111110xxxx01 */
7753306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {12, 2, 1, 14},
7763306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {38, 1, 1, 14},
7773306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    /* 1xxxx10 or 1xxxx11 from 11 zeros to 0 zeros*/
7783306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 1, 0, 3},
7793306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 1, 0, 3},
7803306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 1, 0, 4},
7813306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {0, 1, 1, 4},
7823306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {1, 1, 1, 5},
7833306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {2, 1, 1, 5},
7843306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {5, 1, 1, 6},
7853306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {6, 1, 1, 6},
7863306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {10, 1, 1, 7},
7873306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {11, 1, 1, 7},
7883306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {13, 1, 1, 8},
7893306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {14, 1, 1, 8},
7903306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {19, 1, 1, 9},
7913306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {20, 1, 1, 9},
7923306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {24, 1, 1, 10},
7933306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {25, 1, 1, 10},
7943306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {27, 1, 1, 11},
7953306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {28, 1, 1, 11},
7963306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {34, 1, 1, 12},
7973306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {35, 1, 1, 12},
7983306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {36, 1, 1, 13},
7993306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {37, 1, 1, 13},
8003306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {39, 1, 1, 14},
8013306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong    {40, 1, 1, 14}
8023306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong};
8033306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8043306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/*----------------------------------------------------------------------------
8053306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; EXTERNAL FUNCTION REFERENCES
8063306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; Declare functions defined elsewhere and referenced in this module
8073306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong----------------------------------------------------------------------------*/
8083306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8093306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8103306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/*----------------------------------------------------------------------------
8113306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; EXTERNAL GLOBAL STORE/BUFFER/POINTER REFERENCES
8123306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; Declare variables used in this module but defined elsewhere
8133306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong----------------------------------------------------------------------------*/
8143306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8153306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8163306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/*----------------------------------------------------------------------------
8173306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; FUNCTION CODE
8183306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong----------------------------------------------------------------------------*/
8193306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8203306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8213306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/*----------------------------------------------------------------------------
8223306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; Define all local variables
8233306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong----------------------------------------------------------------------------*/
8243306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8253306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8263306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/*----------------------------------------------------------------------------
8273306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; Function body here
8283306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong----------------------------------------------------------------------------*/
8293306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8303306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8313306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong/*----------------------------------------------------------------------------
8323306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong; Return nothing or data or data pointer
8333306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong----------------------------------------------------------------------------*/
8343306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
8353306cfee3bf38ab207a0504e49c2d492bb73ffbfJames Dong
836