| /* |
| * Canopus HQ/HQA decoder |
| * |
| * 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 |
| */ |
| |
| #include "hq_hqa.h" |
| |
| #define MAT_SIZE 64 |
| |
| static const uint8_t cbp_vlc_bits[16] = { |
| 0x04, 0x1C, 0x1D, 0x09, 0x1E, 0x0B, 0x1B, 0x08, |
| 0x1F, 0x1A, 0x0C, 0x07, 0x0A, 0x06, 0x05, 0x00, |
| }; |
| |
| static const uint8_t cbp_vlc_lens[16] = { |
| 4, 5, 5, 4, 5, 4, 5, 4, 5, 5, 4, 4, 4, 4, 4, 2, |
| }; |
| |
| static const int32_t qmat00[MAT_SIZE] = { |
| 0x0040000, 0x000B18B, 0x00058C5, 0x000B1B1, 0x00082D3, 0x000B1B1, |
| 0x000A953, 0x000827B, 0x00104F7, 0x000A953, 0x0009000, 0x000EADD, |
| 0x001037B, 0x000756E, 0x0009000, 0x000776D, 0x000696A, 0x000E987, |
| 0x000E987, 0x000D2D4, 0x000776D, 0x0016BAF, 0x0014B4C, 0x001A21A, |
| 0x001BA75, 0x001A21A, 0x000A5A6, 0x000B5D8, 0x000611E, 0x000811D, |
| 0x00150B6, 0x00181B0, 0x00181B0, 0x00150B6, 0x0020474, 0x0018477, |
| 0x0022710, 0x001FD1E, 0x001366C, 0x0015000, 0x001366C, 0x000FE8F, |
| 0x00044E2, 0x0008A6D, 0x000EA30, 0x0010E47, 0x0010E47, 0x001D460, |
| 0x00229B2, 0x001FCB2, 0x0019FA3, 0x000D94C, 0x000CFD2, 0x0007F2D, |
| 0x000DEED, 0x0014D5E, 0x0029ABD, 0x0037BB5, 0x002D16B, 0x001FECE, |
| 0x000B45B, 0x0011521, 0x0022A42, 0x0012B9C, |
| }; |
| |
| static const int32_t qmat01[MAT_SIZE] = { |
| 0x0040000, 0x000B18B, 0x00058C5, 0x000B1B1, 0x00082D3, 0x000B1B1, |
| 0x000EB2D, 0x000B53A, 0x0016A73, 0x000EB2D, 0x000D000, 0x0014632, |
| 0x0016314, 0x000A319, 0x000D000, 0x000A36D, 0x0009041, 0x0014BDA, |
| 0x0014BDA, 0x0012081, 0x000A36D, 0x0016BAF, 0x0014B4C, 0x001A21A, |
| 0x001BA75, 0x001A21A, 0x000A5A6, 0x000B5D8, 0x000611E, 0x000811D, |
| 0x00150B6, 0x00181B0, 0x00181B0, 0x00150B6, 0x0020474, 0x0018477, |
| 0x0045A60, 0x004058C, 0x0026CD9, 0x002A000, 0x0026CD9, 0x00202C6, |
| 0x0008B4C, 0x00114D9, 0x001D977, 0x0021C8F, 0x0021C8F, 0x003B2EF, |
| 0x0045365, 0x007FD2A, 0x00675E5, 0x0036A1F, 0x0033AF3, 0x001FF4B, |
| 0x001C010, 0x0029E24, 0x0053C47, 0x007003E, 0x005A9C7, 0x004024C, |
| 0x0016A72, 0x0022A42, 0x0045485, 0x0025738, |
| }; |
| |
| static const int32_t qmat02[MAT_SIZE] = { |
| 0x0040000, 0x0016315, 0x000B18B, 0x0016363, 0x00105A6, 0x0016363, |
| 0x00152A7, 0x00104F7, 0x00209EE, 0x00152A7, 0x0012000, 0x001D5B9, |
| 0x00206F6, 0x000EADD, 0x0012000, 0x000EEDA, 0x000D2D4, 0x001D30D, |
| 0x001D30D, 0x001A5A9, 0x000EEDA, 0x002D75E, 0x0029698, 0x0034433, |
| 0x00374EB, 0x0034433, 0x0014B4C, 0x0016BAF, 0x000C23C, 0x001023A, |
| 0x002A16C, 0x0030360, 0x0030360, 0x002A16C, 0x00408E9, 0x00308EF, |
| 0x0044E21, 0x003FA3C, 0x0026CD9, 0x002A000, 0x0026CD9, 0x001FD1E, |
| 0x00089C4, 0x00114D9, 0x001D460, 0x0021C8F, 0x0021C8F, 0x003A8C0, |
| 0x0045365, 0x003F964, 0x0033F47, 0x001B297, 0x0019FA3, 0x000FE59, |
| 0x001BDDA, 0x0029ABD, 0x0053579, 0x006F76A, 0x005A2D7, 0x003FD9D, |
| 0x00168B6, 0x0022A42, 0x0045485, 0x0025738, |
| }; |
| |
| static const int32_t qmat03[MAT_SIZE] = { |
| 0x0040000, 0x0016315, 0x000B18B, 0x0016363, 0x00105A6, 0x0016363, |
| 0x001D65A, 0x0016A73, 0x002D4E7, 0x001D65A, 0x001A000, 0x0028C65, |
| 0x002C628, 0x0014632, 0x001A000, 0x00146D9, 0x0012081, 0x00297B5, |
| 0x00297B5, 0x0024102, 0x00146D9, 0x002D75E, 0x0029698, 0x0034433, |
| 0x00374EB, 0x0034433, 0x0014B4C, 0x0016BAF, 0x000C23C, 0x001023A, |
| 0x002A16C, 0x0030360, 0x0030360, 0x002A16C, 0x00408E9, 0x00308EF, |
| 0x008B4C0, 0x0080B18, 0x004D9B2, 0x0054000, 0x004D9B2, 0x004058C, |
| 0x0011698, 0x00229B2, 0x003B2EF, 0x004391E, 0x004391E, 0x00765DD, |
| 0x008A6CA, 0x00FFA54, 0x00CEBCA, 0x006D43E, 0x00675E5, 0x003FE95, |
| 0x003801F, 0x0053C47, 0x00A788E, 0x00E007C, 0x00B538D, 0x0080498, |
| 0x002D4E3, 0x0045485, 0x008A90A, 0x004AE71, |
| }; |
| |
| static const int32_t qmat04[MAT_SIZE] = { |
| 0x0040000, 0x00214A0, 0x0010A50, 0x0021514, 0x0018879, 0x0021514, |
| 0x001FBFA, 0x0018772, 0x0030EE5, 0x001FBFA, 0x001B000, 0x002C096, |
| 0x0030A71, 0x001604B, 0x001B000, 0x0016647, 0x0013C3F, 0x002BC94, |
| 0x002BC94, 0x002787D, 0x0016647, 0x004430D, 0x003E1E4, 0x004E64D, |
| 0x0052F60, 0x004E64D, 0x001F0F2, 0x0022187, 0x001235A, 0x0018357, |
| 0x003F223, 0x0048510, 0x0048510, 0x003F223, 0x0060D5D, 0x0048D66, |
| 0x0067531, 0x005F75A, 0x003A345, 0x003F000, 0x003A345, 0x002FBAD, |
| 0x000CEA6, 0x0019F46, 0x002BE90, 0x0032AD6, 0x0032AD6, 0x0057D20, |
| 0x0067D17, 0x005F616, 0x004DEEA, 0x0028BE3, 0x0026F75, 0x0017D86, |
| 0x0029CC8, 0x003E81B, 0x007D036, 0x00A731F, 0x0087442, 0x005FC6B, |
| 0x0021D11, 0x0033F64, 0x0067EC7, 0x00382D5, |
| }; |
| |
| static const int32_t qmat05[MAT_SIZE] = { |
| 0x0040000, 0x00214A0, 0x0010A50, 0x0021514, 0x0018879, 0x0021514, |
| 0x002C186, 0x0021FAD, 0x0043F5A, 0x002C186, 0x0027000, 0x003D297, |
| 0x004293C, 0x001E94C, 0x0027000, 0x001EA46, 0x001B0C2, 0x003E38F, |
| 0x003E38F, 0x0036183, 0x001EA46, 0x004430D, 0x003E1E4, 0x004E64D, |
| 0x0052F60, 0x004E64D, 0x001F0F2, 0x0022187, 0x001235A, 0x0018357, |
| 0x003F223, 0x0048510, 0x0048510, 0x003F223, 0x0060D5D, 0x0048D66, |
| 0x00D0F1F, 0x00C10A4, 0x007468B, 0x007E000, 0x007468B, 0x0060852, |
| 0x001A1E4, 0x0033E8C, 0x0058C66, 0x00655AD, 0x00655AD, 0x00B18CC, |
| 0x00CFA2F, 0x017F77F, 0x01361B0, 0x00A3E5C, 0x009B0D8, 0x005FDE0, |
| 0x005402F, 0x007DA6B, 0x00FB4D5, 0x01500BA, 0x010FD54, 0x00C06E5, |
| 0x0043F55, 0x0067EC7, 0x00CFD8F, 0x00705A9, |
| }; |
| |
| static const int32_t qmat06[MAT_SIZE] = { |
| 0x0040000, 0x002C62A, 0x0016315, 0x002C6C5, 0x0020B4C, 0x002C6C5, |
| 0x002A54E, 0x00209EE, 0x00413DC, 0x002A54E, 0x0024000, 0x003AB73, |
| 0x0040DEC, 0x001D5B9, 0x0024000, 0x001DDB4, 0x001A5A9, 0x003A61B, |
| 0x003A61B, 0x0034B52, 0x001DDB4, 0x005AEBC, 0x0052D2F, 0x0068867, |
| 0x006E9D6, 0x0068867, 0x0029698, 0x002D75E, 0x0018477, 0x0020474, |
| 0x00542D9, 0x00606C0, 0x00606C0, 0x00542D9, 0x00811D1, 0x00611DE, |
| 0x0089C42, 0x007F478, 0x004D9B2, 0x0054000, 0x004D9B2, 0x003FA3C, |
| 0x0011388, 0x00229B2, 0x003A8C0, 0x004391E, 0x004391E, 0x0075180, |
| 0x008A6CA, 0x007F2C9, 0x0067E8E, 0x003652F, 0x0033F47, 0x001FCB2, |
| 0x0037BB5, 0x0053579, 0x00A6AF3, 0x00DEED4, 0x00B45AE, 0x007FB39, |
| 0x002D16B, 0x0045485, 0x008A90A, 0x004AE71, |
| }; |
| |
| static const int32_t qmat07[MAT_SIZE] = { |
| 0x0040000, 0x002C62A, 0x0016315, 0x002C6C5, 0x0020B4C, 0x002C6C5, |
| 0x003ACB3, 0x002D4E7, 0x005A9CE, 0x003ACB3, 0x0034000, 0x00518CA, |
| 0x0058C50, 0x0028C65, 0x0034000, 0x0028DB3, 0x0024102, 0x0052F69, |
| 0x0052F69, 0x0048204, 0x0028DB3, 0x005AEBC, 0x0052D2F, 0x0068867, |
| 0x006E9D6, 0x0068867, 0x0029698, 0x002D75E, 0x0018477, 0x0020474, |
| 0x00542D9, 0x00606C0, 0x00606C0, 0x00542D9, 0x00811D1, 0x00611DE, |
| 0x011697F, 0x0101631, 0x009B363, 0x00A8000, 0x009B363, 0x0080B18, |
| 0x0022D30, 0x0045365, 0x00765DD, 0x008723C, 0x008723C, 0x00ECBBB, |
| 0x0114D94, 0x01FF4A9, 0x019D795, 0x00DA87B, 0x00CEBCA, 0x007FD2A, |
| 0x007003E, 0x00A788E, 0x014F11C, 0x01C00F8, 0x016A71B, 0x0100931, |
| 0x005A9C7, 0x008A90A, 0x0115214, 0x0095CE2, |
| }; |
| |
| static const int32_t qmat08[MAT_SIZE] = { |
| 0x0040000, 0x00377B5, 0x001BBDA, 0x0037876, 0x0028E1E, 0x0037876, |
| 0x0034EA1, 0x0028C69, 0x00518D3, 0x0034EA1, 0x002D000, 0x004964F, |
| 0x0051167, 0x0024B28, 0x002D000, 0x0025521, 0x0020F13, 0x0048FA1, |
| 0x0048FA1, 0x0041E26, 0x0025521, 0x0071A6B, 0x006787B, 0x0082A80, |
| 0x008A44B, 0x0082A80, 0x0033C3E, 0x0038D36, 0x001E595, 0x0028591, |
| 0x006938F, 0x0078870, 0x0078870, 0x006938F, 0x00A1646, 0x0079655, |
| 0x00AC352, 0x009F196, 0x006101E, 0x0069000, 0x006101E, 0x004F8CB, |
| 0x001586A, 0x002B41F, 0x00492F0, 0x0054765, 0x0054765, 0x00925E0, |
| 0x00AD07C, 0x009EF7B, 0x0081E31, 0x0043E7A, 0x0040F19, 0x0027BDF, |
| 0x0045AA2, 0x00682D8, 0x00D05B0, 0x0116A89, 0x00E1719, 0x009FA07, |
| 0x00385C6, 0x00569A6, 0x00AD34C, 0x005DA0D, |
| }; |
| |
| static const int32_t qmat09[MAT_SIZE] = { |
| 0x0040000, 0x00377B5, 0x001BBDA, 0x0037876, 0x0028E1E, 0x0037876, |
| 0x00497E0, 0x0038A21, 0x0071441, 0x00497E0, 0x0041000, 0x0065EFC, |
| 0x006EF64, 0x0032F7E, 0x0041000, 0x003311F, 0x002D143, 0x0067B44, |
| 0x0067B44, 0x005A285, 0x003311F, 0x0071A6B, 0x006787B, 0x0082A80, |
| 0x008A44B, 0x0082A80, 0x0033C3E, 0x0038D36, 0x001E595, 0x0028591, |
| 0x006938F, 0x0078870, 0x0078870, 0x006938F, 0x00A1646, 0x0079655, |
| 0x015C3DF, 0x0141BBD, 0x00C203C, 0x00D2000, 0x00C203C, 0x00A0DDE, |
| 0x002B87C, 0x005683E, 0x0093F55, 0x00A8ECA, 0x00A8ECA, 0x0127EA9, |
| 0x015A0F9, 0x027F1D3, 0x0204D7A, 0x011129A, 0x01026BD, 0x009FC75, |
| 0x008C04E, 0x00D16B2, 0x01A2D64, 0x0230136, 0x01C50E1, 0x0140B7D, |
| 0x0071438, 0x00AD34C, 0x015A699, 0x00BB41A, |
| }; |
| |
| static const int32_t qmat0A[MAT_SIZE] = { |
| 0x0040000, 0x004293F, 0x00214A0, 0x0042A28, 0x00310F1, 0x0042A28, |
| 0x003F7F5, 0x0030EE5, 0x0061DCA, 0x003F7F5, 0x0036000, 0x005812C, |
| 0x00614E2, 0x002C096, 0x0036000, 0x002CC8E, 0x002787D, 0x0057928, |
| 0x0057928, 0x004F0FB, 0x002CC8E, 0x008861A, 0x007C3C7, 0x009CC9A, |
| 0x00A5EC1, 0x009CC9A, 0x003E1E4, 0x004430D, 0x00246B3, 0x00306AF, |
| 0x007E445, 0x0090A20, 0x0090A20, 0x007E445, 0x00C1ABA, 0x0091ACC, |
| 0x00CEA63, 0x00BEEB4, 0x007468B, 0x007E000, 0x007468B, 0x005F75A, |
| 0x0019D4C, 0x0033E8C, 0x0057D20, 0x00655AD, 0x00655AD, 0x00AFA40, |
| 0x00CFA2F, 0x00BEC2D, 0x009BDD5, 0x00517C6, 0x004DEEA, 0x002FB0B, |
| 0x005398F, 0x007D036, 0x00FA06C, 0x014E63E, 0x010E885, 0x00BF8D6, |
| 0x0043A21, 0x0067EC7, 0x00CFD8F, 0x00705A9, |
| }; |
| |
| static const int32_t qmat0B[MAT_SIZE] = { |
| 0x0040000, 0x004293F, 0x00214A0, 0x0042A28, 0x00310F1, 0x0042A28, |
| 0x005830D, 0x0043F5A, 0x0087EB5, 0x005830D, 0x004E000, 0x007A52F, |
| 0x0085278, 0x003D297, 0x004E000, 0x003D48C, 0x0036183, 0x007C71E, |
| 0x007C71E, 0x006C307, 0x003D48C, 0x008861A, 0x007C3C7, 0x009CC9A, |
| 0x00A5EC1, 0x009CC9A, 0x003E1E4, 0x004430D, 0x00246B3, 0x00306AF, |
| 0x007E445, 0x0090A20, 0x0090A20, 0x007E445, 0x00C1ABA, 0x0091ACC, |
| 0x01A1E3F, 0x0182149, 0x00E8D15, 0x00FC000, 0x00E8D15, 0x00C10A4, |
| 0x00343C8, 0x0067D17, 0x00B18CC, 0x00CAB59, 0x00CAB59, 0x0163198, |
| 0x019F45E, 0x02FEEFD, 0x026C35F, 0x0147CB9, 0x01361B0, 0x00BFBBF, |
| 0x00A805D, 0x00FB4D5, 0x01F69AB, 0x02A0174, 0x021FAA8, 0x0180DC9, |
| 0x0087EAA, 0x00CFD8F, 0x019FB1E, 0x00E0B52, |
| }; |
| |
| static const int32_t qmat0C[MAT_SIZE] = { |
| 0x0040000, 0x004DACA, 0x0026D65, 0x004DBD9, 0x00393C4, 0x004DBD9, |
| 0x004A148, 0x0039160, 0x00722C1, 0x004A148, 0x003F000, 0x0066C09, |
| 0x007185D, 0x0033604, 0x003F000, 0x00343FB, 0x002E1E8, 0x00662AF, |
| 0x00662AF, 0x005C3CF, 0x00343FB, 0x009F1C9, 0x0090F13, 0x00B6EB3, |
| 0x00C1936, 0x00B6EB3, 0x0048789, 0x004F8E5, 0x002A7D1, 0x00387CC, |
| 0x00934FB, 0x00A8BCF, 0x00A8BCF, 0x00934FB, 0x00E1F2E, 0x00A9F44, |
| 0x00F1173, 0x00DEBD1, 0x0087CF7, 0x0093000, 0x0087CF7, 0x006F5E9, |
| 0x001E22E, 0x003C8F8, 0x0066750, 0x00763F4, 0x00763F4, 0x00CCEA0, |
| 0x00F23E1, 0x00DE8DF, 0x00B5D78, 0x005F111, 0x005AEBC, 0x0037A38, |
| 0x006187D, 0x0091D95, 0x0123B29, 0x01861F3, 0x013B9F0, 0x00DF7A4, |
| 0x004EE7C, 0x00793E9, 0x00F27D1, 0x0083145, |
| }; |
| |
| static const int32_t qmat0D[MAT_SIZE] = { |
| 0x0040000, 0x004DACA, 0x0026D65, 0x004DBD9, 0x00393C4, 0x004DBD9, |
| 0x0066E3A, 0x004F494, 0x009E928, 0x0066E3A, 0x005B000, 0x008EB61, |
| 0x009B58C, 0x00475B1, 0x005B000, 0x00477F9, 0x003F1C4, 0x00912F8, |
| 0x00912F8, 0x007E388, 0x00477F9, 0x009F1C9, 0x0090F13, 0x00B6EB3, |
| 0x00C1936, 0x00B6EB3, 0x0048789, 0x004F8E5, 0x002A7D1, 0x00387CC, |
| 0x00934FB, 0x00A8BCF, 0x00A8BCF, 0x00934FB, 0x00E1F2E, 0x00A9F44, |
| 0x01E789E, 0x01C26D5, 0x010F9EE, 0x0126000, 0x010F9EE, 0x00E136B, |
| 0x003CF14, 0x00791F1, 0x00CF243, 0x00EC7E8, 0x00EC7E8, 0x019E487, |
| 0x01E47C3, 0x037EC27, 0x02D3944, 0x017E6D8, 0x0169CA2, 0x00DFB0A, |
| 0x00C406D, 0x01252F9, 0x024A5F2, 0x03101B2, 0x027A46F, 0x01C1016, |
| 0x009E91C, 0x00F27D1, 0x01E4FA3, 0x010628B, |
| }; |
| |
| static const int32_t qmat0E[MAT_SIZE] = { |
| 0x0040000, 0x0058C54, 0x002C62A, 0x0058D8A, 0x0041697, 0x0058D8A, |
| 0x0054A9C, 0x00413DC, 0x00827B8, 0x0054A9C, 0x0048000, 0x00756E5, |
| 0x0081BD8, 0x003AB73, 0x0048000, 0x003BB68, 0x0034B52, 0x0074C35, |
| 0x0074C35, 0x00696A4, 0x003BB68, 0x00B5D78, 0x00A5A5F, 0x00D10CD, |
| 0x00DD3AB, 0x00D10CD, 0x0052D2F, 0x005AEBC, 0x00308EF, 0x00408E9, |
| 0x00A85B1, 0x00C0D7F, 0x00C0D7F, 0x00A85B1, 0x01023A3, 0x00C23BB, |
| 0x0113883, 0x00FE8EF, 0x009B363, 0x00A8000, 0x009B363, 0x007F478, |
| 0x0022710, 0x0045365, 0x0075180, 0x008723C, 0x008723C, 0x00EA300, |
| 0x0114D94, 0x00FE591, 0x00CFD1C, 0x006CA5D, 0x0067E8E, 0x003F964, |
| 0x006F76A, 0x00A6AF3, 0x014D5E6, 0x01BDDA8, 0x0168B5C, 0x00FF672, |
| 0x005A2D7, 0x008A90A, 0x0115214, 0x0095CE2, |
| }; |
| |
| static const int32_t qmat0F[MAT_SIZE] = { |
| 0x0040000, 0x0058C54, 0x002C62A, 0x0058D8A, 0x0041697, 0x0058D8A, |
| 0x0075967, 0x005A9CE, 0x00B539C, 0x0075967, 0x0068000, 0x00A3194, |
| 0x00B18A0, 0x00518CA, 0x0068000, 0x0051B65, 0x0048204, 0x00A5ED3, |
| 0x00A5ED3, 0x0090409, 0x0051B65, 0x00B5D78, 0x00A5A5F, 0x00D10CD, |
| 0x00DD3AB, 0x00D10CD, 0x0052D2F, 0x005AEBC, 0x00308EF, 0x00408E9, |
| 0x00A85B1, 0x00C0D7F, 0x00C0D7F, 0x00A85B1, 0x01023A3, 0x00C23BB, |
| 0x022D2FE, 0x0202C61, 0x01366C7, 0x0150000, 0x01366C7, 0x0101631, |
| 0x0045A60, 0x008A6CA, 0x00ECBBB, 0x010E477, 0x010E477, 0x01D9776, |
| 0x0229B27, 0x03FE951, 0x033AF2A, 0x01B50F6, 0x019D795, 0x00FFA54, |
| 0x00E007C, 0x014F11C, 0x029E239, 0x03801F0, 0x02D4E36, 0x0201262, |
| 0x00B538D, 0x0115214, 0x022A428, 0x012B9C3, |
| }; |
| |
| static const int32_t qmat10[MAT_SIZE] = { |
| 0x0040000, 0x006EF69, 0x00377B5, 0x006F0ED, 0x0051C3D, 0x006F0ED, |
| 0x0069D43, 0x00518D3, 0x00A31A6, 0x0069D43, 0x005A000, 0x0092C9F, |
| 0x00A22CD, 0x004964F, 0x005A000, 0x004AA42, 0x0041E26, 0x0091F43, |
| 0x0091F43, 0x0083C4D, 0x004AA42, 0x00E34D6, 0x00CF0F6, 0x0105500, |
| 0x0114896, 0x0105500, 0x006787B, 0x0071A6B, 0x003CB2A, 0x0050B23, |
| 0x00D271E, 0x00F10DF, 0x00F10DF, 0x00D271E, 0x0142C8B, 0x00F2CAA, |
| 0x01586A4, 0x013E32B, 0x00C203C, 0x00D2000, 0x00C203C, 0x009F196, |
| 0x002B0D5, 0x005683E, 0x00925E0, 0x00A8ECA, 0x00A8ECA, 0x0124BC0, |
| 0x015A0F9, 0x013DEF5, 0x0103C63, 0x0087CF4, 0x0081E31, 0x004F7BD, |
| 0x008B544, 0x00D05B0, 0x01A0B5F, 0x022D511, 0x01C2E32, 0x013F40F, |
| 0x0070B8D, 0x00AD34C, 0x015A699, 0x00BB41A, |
| }; |
| |
| static const int32_t qmat11[MAT_SIZE] = { |
| 0x0040000, 0x006EF69, 0x00377B5, 0x006F0ED, 0x0051C3D, 0x006F0ED, |
| 0x0092FC0, 0x0071441, 0x00E2883, 0x0092FC0, 0x0082000, 0x00CBDF9, |
| 0x00DDEC8, 0x0065EFC, 0x0082000, 0x006623F, 0x005A285, 0x00CF687, |
| 0x00CF687, 0x00B450B, 0x006623F, 0x00E34D6, 0x00CF0F6, 0x0105500, |
| 0x0114896, 0x0105500, 0x006787B, 0x0071A6B, 0x003CB2A, 0x0050B23, |
| 0x00D271E, 0x00F10DF, 0x00F10DF, 0x00D271E, 0x0142C8B, 0x00F2CAA, |
| 0x02B87BE, 0x028377A, 0x0184078, 0x01A4000, 0x0184078, 0x0141BBD, |
| 0x00570F8, 0x00AD07C, 0x0127EA9, 0x0151D95, 0x0151D95, 0x024FD53, |
| 0x02B41F1, 0x04FE3A6, 0x0409AF4, 0x0222534, 0x0204D7A, 0x013F8E9, |
| 0x011809B, 0x01A2D64, 0x0345AC7, 0x046026C, 0x038A1C3, 0x02816FA, |
| 0x00E2871, 0x015A699, 0x02B4D32, 0x0176834, |
| }; |
| |
| static const int32_t qmat12[MAT_SIZE] = { |
| 0x0040000, 0x008527E, 0x004293F, 0x0085450, 0x00621E3, 0x0085450, |
| 0x007EFEA, 0x0061DCA, 0x00C3B94, 0x007EFEA, 0x006C000, 0x00B0258, |
| 0x00C29C3, 0x005812C, 0x006C000, 0x005991C, 0x004F0FB, 0x00AF250, |
| 0x00AF250, 0x009E1F6, 0x005991C, 0x0110C35, 0x00F878E, 0x0139934, |
| 0x014BD81, 0x0139934, 0x007C3C7, 0x008861A, 0x0048D66, 0x0060D5D, |
| 0x00FC88A, 0x012143F, 0x012143F, 0x00FC88A, 0x0183574, 0x0123599, |
| 0x019D4C5, 0x017DD67, 0x00E8D15, 0x00FC000, 0x00E8D15, 0x00BEEB4, |
| 0x0033A99, 0x0067D17, 0x00AFA40, 0x00CAB59, 0x00CAB59, 0x015F480, |
| 0x019F45E, 0x017D85A, 0x0137BAA, 0x00A2F8C, 0x009BDD5, 0x005F616, |
| 0x00A731F, 0x00FA06C, 0x01F40D9, 0x029CC7B, 0x021D109, 0x017F1AB, |
| 0x0087442, 0x00CFD8F, 0x019FB1E, 0x00E0B52, |
| }; |
| |
| static const int32_t qmat13[MAT_SIZE] = { |
| 0x0040000, 0x008527E, 0x004293F, 0x0085450, 0x00621E3, 0x0085450, |
| 0x00B061A, 0x0087EB5, 0x010FD69, 0x00B061A, 0x009C000, 0x00F4A5E, |
| 0x010A4F0, 0x007A52F, 0x009C000, 0x007A918, 0x006C307, 0x00F8E3C, |
| 0x00F8E3C, 0x00D860D, 0x007A918, 0x0110C35, 0x00F878E, 0x0139934, |
| 0x014BD81, 0x0139934, 0x007C3C7, 0x008861A, 0x0048D66, 0x0060D5D, |
| 0x00FC88A, 0x012143F, 0x012143F, 0x00FC88A, 0x0183574, 0x0123599, |
| 0x0343C7D, 0x0304292, 0x01D1A2A, 0x01F8000, 0x01D1A2A, 0x0182149, |
| 0x0068790, 0x00CFA2F, 0x0163198, 0x01956B3, 0x01956B3, 0x02C6330, |
| 0x033E8BB, 0x05FDDFA, 0x04D86BE, 0x028F971, 0x026C35F, 0x017F77F, |
| 0x01500BA, 0x01F69AB, 0x03ED355, 0x05402E9, 0x043F550, 0x0301B93, |
| 0x010FD54, 0x019FB1E, 0x033F63C, 0x01C16A5, |
| }; |
| |
| static const int32_t qmat14[MAT_SIZE] = { |
| 0x0040000, 0x009B593, 0x004DACA, 0x009B7B2, 0x0072789, 0x009B7B2, |
| 0x0094291, 0x00722C1, 0x00E4582, 0x0094291, 0x007E000, 0x00CD812, |
| 0x00E30B9, 0x0066C09, 0x007E000, 0x00687F5, 0x005C3CF, 0x00CC55D, |
| 0x00CC55D, 0x00B879F, 0x00687F5, 0x013E393, 0x0121E26, 0x016DD67, |
| 0x018326C, 0x016DD67, 0x0090F13, 0x009F1C9, 0x0054FA2, 0x0070F97, |
| 0x01269F7, 0x015179F, 0x015179F, 0x01269F7, 0x01C3E5D, 0x0153E87, |
| 0x01E22E6, 0x01BD7A3, 0x010F9EE, 0x0126000, 0x010F9EE, 0x00DEBD1, |
| 0x003C45D, 0x00791F1, 0x00CCEA0, 0x00EC7E8, 0x00EC7E8, 0x0199D41, |
| 0x01E47C3, 0x01BD1BE, 0x016BAF1, 0x00BE223, 0x00B5D78, 0x006F46F, |
| 0x00C30F9, 0x0123B29, 0x0247652, 0x030C3E5, 0x02773E0, 0x01BEF48, |
| 0x009DCF8, 0x00F27D1, 0x01E4FA3, 0x010628B, |
| }; |
| |
| static const int32_t qmat15[MAT_SIZE] = { |
| 0x0040000, 0x009B593, 0x004DACA, 0x009B7B2, 0x0072789, 0x009B7B2, |
| 0x00CDC74, 0x009E928, 0x013D250, 0x00CDC74, 0x00B6000, 0x011D6C3, |
| 0x0136B18, 0x008EB61, 0x00B6000, 0x008EFF2, 0x007E388, 0x01225F0, |
| 0x01225F0, 0x00FC70F, 0x008EFF2, 0x013E393, 0x0121E26, 0x016DD67, |
| 0x018326C, 0x016DD67, 0x0090F13, 0x009F1C9, 0x0054FA2, 0x0070F97, |
| 0x01269F7, 0x015179F, 0x015179F, 0x01269F7, 0x01C3E5D, 0x0153E87, |
| 0x03CF13D, 0x0384DAA, 0x021F3DC, 0x024C000, 0x021F3DC, 0x01C26D5, |
| 0x0079E28, 0x00F23E1, 0x019E487, 0x01D8FD0, 0x01D8FD0, 0x033C90E, |
| 0x03C8F85, 0x06FD84F, 0x05A7289, 0x02FCDAF, 0x02D3944, 0x01BF614, |
| 0x01880D9, 0x024A5F2, 0x0494BE4, 0x0620365, 0x04F48DE, 0x038202B, |
| 0x013D237, 0x01E4FA3, 0x03C9F46, 0x020C516, |
| }; |
| |
| static const int32_t qmat16[MAT_SIZE] = { |
| 0x0040000, 0x00B18A8, 0x0058C54, 0x00B1B15, 0x0082D2E, 0x00B1B15, |
| 0x00A9538, 0x00827B8, 0x0104F6F, 0x00A9538, 0x0090000, 0x00EADCB, |
| 0x01037AF, 0x00756E5, 0x0090000, 0x00776CF, 0x00696A4, 0x00E986B, |
| 0x00E986B, 0x00D2D48, 0x00776CF, 0x016BAF1, 0x014B4BD, 0x01A219A, |
| 0x01BA757, 0x01A219A, 0x00A5A5F, 0x00B5D78, 0x00611DE, 0x00811D1, |
| 0x0150B63, 0x0181AFF, 0x0181AFF, 0x0150B63, 0x0204745, 0x0184776, |
| 0x0227107, 0x01FD1DF, 0x01366C7, 0x0150000, 0x01366C7, 0x00FE8EF, |
| 0x0044E21, 0x008A6CA, 0x00EA300, 0x010E477, 0x010E477, 0x01D4601, |
| 0x0229B27, 0x01FCB22, 0x019FA38, 0x00D94BA, 0x00CFD1C, 0x007F2C9, |
| 0x00DEED4, 0x014D5E6, 0x029ABCC, 0x037BB4F, 0x02D16B7, 0x01FECE4, |
| 0x00B45AE, 0x0115214, 0x022A428, 0x012B9C3, |
| }; |
| |
| static const int32_t qmat17[MAT_SIZE] = { |
| 0x0040000, 0x00B18A8, 0x0058C54, 0x00B1B15, 0x0082D2E, 0x00B1B15, |
| 0x00EB2CD, 0x00B539C, 0x016A737, 0x00EB2CD, 0x00D0000, 0x0146328, |
| 0x0163140, 0x00A3194, 0x00D0000, 0x00A36CB, 0x0090409, 0x014BDA5, |
| 0x014BDA5, 0x0120812, 0x00A36CB, 0x016BAF1, 0x014B4BD, 0x01A219A, |
| 0x01BA757, 0x01A219A, 0x00A5A5F, 0x00B5D78, 0x00611DE, 0x00811D1, |
| 0x0150B63, 0x0181AFF, 0x0181AFF, 0x0150B63, 0x0204745, 0x0184776, |
| 0x045A5FD, 0x04058C2, 0x026CD8D, 0x02A0000, 0x026CD8D, 0x0202C61, |
| 0x008B4C0, 0x0114D94, 0x01D9776, 0x021C8EE, 0x021C8EE, 0x03B2EEB, |
| 0x045364F, 0x07FD2A3, 0x0675E53, 0x036A1ED, 0x033AF2A, 0x01FF4A9, |
| 0x01C00F8, 0x029E239, 0x053C472, 0x07003E1, 0x05A9C6B, 0x04024C4, |
| 0x016A71B, 0x022A428, 0x0454850, 0x0257386, |
| }; |
| |
| static const int32_t qmat18[MAT_SIZE] = { |
| 0x0040000, 0x00C7BBD, 0x0063DDF, 0x00C7E77, 0x00932D4, 0x00C7E77, |
| 0x00BE7DF, 0x0092CAF, 0x012595D, 0x00BE7DF, 0x00A2000, 0x0108384, |
| 0x0123EA5, 0x00841C2, 0x00A2000, 0x00865A9, 0x0076978, 0x0106B78, |
| 0x0106B78, 0x00ED2F1, 0x00865A9, 0x019924F, 0x0174B55, 0x01D65CD, |
| 0x01F1C42, 0x01D65CD, 0x00BA5AB, 0x00CC927, 0x006D419, 0x009140C, |
| 0x017ACCF, 0x01B1E5F, 0x01B1E5F, 0x017ACCF, 0x024502E, 0x01B5065, |
| 0x026BF28, 0x023CC1B, 0x015D3A0, 0x017A000, 0x015D3A0, 0x011E60D, |
| 0x004D7E5, 0x009BBA3, 0x0107760, 0x0130106, 0x0130106, 0x020EEC1, |
| 0x026EE8C, 0x023C486, 0x01D397F, 0x00F4751, 0x00E9CBF, 0x008F122, |
| 0x00FACAE, 0x01770A2, 0x02EE145, 0x03EB2B9, 0x032B98E, 0x023EA81, |
| 0x00CAE64, 0x0137C56, 0x026F8AD, 0x01510FC, |
| }; |
| |
| static const int32_t qmat19[MAT_SIZE] = { |
| 0x0040000, 0x00C7BBD, 0x0063DDF, 0x00C7E77, 0x00932D4, 0x00C7E77, |
| 0x0108927, 0x00CBE0F, 0x0197C1E, 0x0108927, 0x00EA000, 0x016EF8D, |
| 0x018F768, 0x00B77C6, 0x00EA000, 0x00B7DA4, 0x00A248A, 0x017555A, |
| 0x017555A, 0x0144914, 0x00B7DA4, 0x019924F, 0x0174B55, 0x01D65CD, |
| 0x01F1C42, 0x01D65CD, 0x00BA5AB, 0x00CC927, 0x006D419, 0x009140C, |
| 0x017ACCF, 0x01B1E5F, 0x01B1E5F, 0x017ACCF, 0x024502E, 0x01B5065, |
| 0x04E5ABC, 0x04863DB, 0x02BA73F, 0x02F4000, 0x02BA73F, 0x02431ED, |
| 0x009CB58, 0x0137746, 0x0214A64, 0x026020C, 0x026020C, 0x04294C8, |
| 0x04DDD19, 0x08FCCF7, 0x0744A1D, 0x03D762A, 0x03A250F, 0x023F33E, |
| 0x01F8117, 0x02F1E80, 0x05E3D00, 0x07E045D, 0x065EFF9, 0x048295C, |
| 0x0197BFE, 0x026F8AD, 0x04DF15A, 0x02A21F7, |
| }; |
| |
| static const int32_t qmat1A[MAT_SIZE] = { |
| 0x0040000, 0x00DDED2, 0x006EF69, 0x00DE1DA, 0x00A387A, 0x00DE1DA, |
| 0x00D3A86, 0x00A31A6, 0x014634B, 0x00D3A86, 0x00B4000, 0x012593E, |
| 0x014459B, 0x0092C9F, 0x00B4000, 0x0095483, 0x0083C4D, 0x0123E85, |
| 0x0123E85, 0x010789A, 0x0095483, 0x01C69AD, 0x019E1ED, 0x020AA01, |
| 0x022912D, 0x020AA01, 0x00CF0F6, 0x00E34D6, 0x0079655, 0x00A1646, |
| 0x01A4E3C, 0x01E21BE, 0x01E21BE, 0x01A4E3C, 0x0285917, 0x01E5954, |
| 0x02B0D48, 0x027C656, 0x0184078, 0x01A4000, 0x0184078, 0x013E32B, |
| 0x00561A9, 0x00AD07C, 0x0124BC0, 0x0151D95, 0x0151D95, 0x0249781, |
| 0x02B41F1, 0x027BDEB, 0x02078C6, 0x010F9E9, 0x0103C63, 0x009EF7B, |
| 0x0116A89, 0x01A0B5F, 0x03416BE, 0x045AA23, 0x0385C65, 0x027E81E, |
| 0x00E1719, 0x015A699, 0x02B4D32, 0x0176834, |
| }; |
| |
| static const int32_t qmat1B[MAT_SIZE] = { |
| 0x0040000, 0x00DDED2, 0x006EF69, 0x00DE1DA, 0x00A387A, 0x00DE1DA, |
| 0x0125F81, 0x00E2883, 0x01C5105, 0x0125F81, 0x0104000, 0x0197BF2, |
| 0x01BBD90, 0x00CBDF9, 0x0104000, 0x00CC47E, 0x00B450B, 0x019ED0E, |
| 0x019ED0E, 0x0168A16, 0x00CC47E, 0x01C69AD, 0x019E1ED, 0x020AA01, |
| 0x022912D, 0x020AA01, 0x00CF0F6, 0x00E34D6, 0x0079655, 0x00A1646, |
| 0x01A4E3C, 0x01E21BE, 0x01E21BE, 0x01A4E3C, 0x0285917, 0x01E5954, |
| 0x0570F7C, 0x0506EF3, 0x03080F1, 0x0348000, 0x03080F1, 0x028377A, |
| 0x00AE1EF, 0x015A0F9, 0x024FD53, 0x02A3B2A, 0x02A3B2A, 0x049FAA6, |
| 0x05683E3, 0x09FC74C, 0x08135E8, 0x0444A68, 0x0409AF4, 0x027F1D3, |
| 0x0230136, 0x0345AC7, 0x068B58E, 0x08C04D9, 0x0714386, 0x0502DF5, |
| 0x01C50E1, 0x02B4D32, 0x0569A64, 0x02ED068, |
| }; |
| |
| static const int32_t qmat1C[MAT_SIZE] = { |
| 0x0040000, 0x00F41E7, 0x007A0F4, 0x00F453D, 0x00B3E20, 0x00F453D, |
| 0x00E8D2D, 0x00B369D, 0x0166D39, 0x00E8D2D, 0x00C6000, 0x0142EF7, |
| 0x0164C91, 0x00A177B, 0x00C6000, 0x00A435D, 0x0090F21, 0x0141193, |
| 0x0141193, 0x0121E43, 0x00A435D, 0x01F410B, 0x01C7884, 0x023EE34, |
| 0x0260617, 0x023EE34, 0x00E3C42, 0x00FA086, 0x0085891, 0x00B1880, |
| 0x01CEFA8, 0x021251E, 0x021251E, 0x01CEFA8, 0x02C6200, 0x0216242, |
| 0x02F5B69, 0x02BC092, 0x01AAD51, 0x01CE000, 0x01AAD51, 0x015E049, |
| 0x005EB6D, 0x00BE556, 0x0142020, 0x0173A24, 0x0173A24, 0x0284041, |
| 0x02F9556, 0x02BB74F, 0x023B80D, 0x012AC80, 0x011DC06, 0x00AEDD4, |
| 0x0132863, 0x01CA61C, 0x0394C38, 0x04CA18D, 0x03DFF3C, 0x02BE5BA, |
| 0x00F7FCF, 0x017D0DB, 0x02FA1B7, 0x019BF6C, |
| }; |
| |
| static const int32_t qmat1D[MAT_SIZE] = { |
| 0x0040000, 0x00F41E7, 0x007A0F4, 0x00F453D, 0x00B3E20, 0x00F453D, |
| 0x01435DA, 0x00F92F6, 0x01F25EC, 0x01435DA, 0x011E000, 0x01C0857, |
| 0x01E83B8, 0x00E042B, 0x011E000, 0x00E0B57, 0x00C658C, 0x01C84C3, |
| 0x01C84C3, 0x018CB18, 0x00E0B57, 0x01F410B, 0x01C7884, 0x023EE34, |
| 0x0260617, 0x023EE34, 0x00E3C42, 0x00FA086, 0x0085891, 0x00B1880, |
| 0x01CEFA8, 0x021251E, 0x021251E, 0x01CEFA8, 0x02C6200, 0x0216242, |
| 0x05FC43B, 0x0587A0B, 0x0355AA3, 0x039C000, 0x0355AA3, 0x02C3D06, |
| 0x00BF887, 0x017CAAB, 0x028B042, 0x02E7447, 0x02E7447, 0x0516083, |
| 0x05F2AAD, 0x0AFC1A0, 0x08E21B2, 0x04B1EA5, 0x04710D9, 0x02BF068, |
| 0x0268155, 0x039970E, 0x0732E1D, 0x09A0555, 0x07C9713, 0x058328D, |
| 0x01F25C5, 0x02FA1B7, 0x05F436E, 0x0337ED9, |
| }; |
| |
| static const int32_t qmat1E[MAT_SIZE] = { |
| 0x0040000, 0x010A4FD, 0x008527E, 0x010A89F, 0x00C43C5, 0x010A89F, |
| 0x00FDFD3, 0x00C3B94, 0x0187727, 0x00FDFD3, 0x00D8000, 0x01604B0, |
| 0x0185387, 0x00B0258, 0x00D8000, 0x00B3237, 0x009E1F6, 0x015E4A0, |
| 0x015E4A0, 0x013C3EC, 0x00B3237, 0x0221869, 0x01F0F1C, 0x0273267, |
| 0x0297B02, 0x0273267, 0x00F878E, 0x0110C35, 0x0091ACC, 0x00C1ABA, |
| 0x01F9114, 0x024287E, 0x024287E, 0x01F9114, 0x0306AE8, 0x0246B31, |
| 0x033A98A, 0x02FBACE, 0x01D1A2A, 0x01F8000, 0x01D1A2A, 0x017DD67, |
| 0x0067531, 0x00CFA2F, 0x015F480, 0x01956B3, 0x01956B3, 0x02BE901, |
| 0x033E8BB, 0x02FB0B3, 0x026F754, 0x0145F17, 0x0137BAA, 0x00BEC2D, |
| 0x014E63E, 0x01F40D9, 0x03E81B1, 0x05398F7, 0x043A213, 0x02FE357, |
| 0x010E885, 0x019FB1E, 0x033F63C, 0x01C16A5, |
| }; |
| |
| static const int32_t qmat1F[MAT_SIZE] = { |
| 0x0040000, 0x010A4FD, 0x008527E, 0x010A89F, 0x00C43C5, 0x010A89F, |
| 0x0160C34, 0x010FD69, 0x021FAD3, 0x0160C34, 0x0138000, 0x01E94BC, |
| 0x02149E1, 0x00F4A5E, 0x0138000, 0x00F5230, 0x00D860D, 0x01F1C78, |
| 0x01F1C78, 0x01B0C1A, 0x00F5230, 0x0221869, 0x01F0F1C, 0x0273267, |
| 0x0297B02, 0x0273267, 0x00F878E, 0x0110C35, 0x0091ACC, 0x00C1ABA, |
| 0x01F9114, 0x024287E, 0x024287E, 0x01F9114, 0x0306AE8, 0x0246B31, |
| 0x06878FB, 0x0608524, 0x03A3454, 0x03F0000, 0x03A3454, 0x0304292, |
| 0x00D0F1F, 0x019F45E, 0x02C6330, 0x032AD65, 0x032AD65, 0x058C661, |
| 0x067D176, 0x0BFBBF4, 0x09B0D7D, 0x051F2E3, 0x04D86BE, 0x02FEEFD, |
| 0x02A0174, 0x03ED355, 0x07DA6AB, 0x0A805D1, 0x087EAA1, 0x0603726, |
| 0x021FAA8, 0x033F63C, 0x067EC78, 0x0382D4A, |
| }; |
| |
| static const int32_t qmat20[MAT_SIZE] = { |
| 0x0040000, 0x0136B27, 0x009B593, 0x0136F64, 0x00E4F11, 0x0136F64, |
| 0x0128521, 0x00E4582, 0x01C8B03, 0x0128521, 0x00FC000, 0x019B023, |
| 0x01C6172, 0x00CD812, 0x00FC000, 0x00D0FEB, 0x00B879F, 0x0198ABB, |
| 0x0198ABB, 0x0170F3E, 0x00D0FEB, 0x027C725, 0x0243C4B, 0x02DBACE, |
| 0x03064D8, 0x02DBACE, 0x0121E26, 0x013E393, 0x00A9F44, 0x00E1F2E, |
| 0x024D3ED, 0x02A2F3E, 0x02A2F3E, 0x024D3ED, 0x0387CBA, 0x02A7D0F, |
| 0x03C45CC, 0x037AF46, 0x021F3DC, 0x024C000, 0x021F3DC, 0x01BD7A3, |
| 0x00788B9, 0x00F23E1, 0x0199D41, 0x01D8FD0, 0x01D8FD0, 0x0333A81, |
| 0x03C8F85, 0x037A37C, 0x02D75E2, 0x017C446, 0x016BAF1, 0x00DE8DF, |
| 0x01861F3, 0x0247652, 0x048ECA4, 0x06187CA, 0x04EE7C1, 0x037DE90, |
| 0x013B9F0, 0x01E4FA3, 0x03C9F46, 0x020C516, |
| }; |
| |
| static const int32_t qmat21[MAT_SIZE] = { |
| 0x0040000, 0x0136B27, 0x009B593, 0x0136F64, 0x00E4F11, 0x0136F64, |
| 0x019B8E7, 0x013D250, 0x027A4A1, 0x019B8E7, 0x016C000, 0x023AD86, |
| 0x026D631, 0x011D6C3, 0x016C000, 0x011DFE3, 0x00FC70F, 0x0244BE1, |
| 0x0244BE1, 0x01F8E1F, 0x011DFE3, 0x027C725, 0x0243C4B, 0x02DBACE, |
| 0x03064D8, 0x02DBACE, 0x0121E26, 0x013E393, 0x00A9F44, 0x00E1F2E, |
| 0x024D3ED, 0x02A2F3E, 0x02A2F3E, 0x024D3ED, 0x0387CBA, 0x02A7D0F, |
| 0x079E27A, 0x0709B54, 0x043E7B8, 0x0498000, 0x043E7B8, 0x0384DAA, |
| 0x00F3C4F, 0x01E47C3, 0x033C90E, 0x03B1FA1, 0x03B1FA1, 0x067921B, |
| 0x0791F0A, 0x0DFB09D, 0x0B4E511, 0x05F9B5E, 0x05A7289, 0x037EC27, |
| 0x03101B2, 0x0494BE4, 0x09297C7, 0x0C406C9, 0x09E91BC, 0x0704057, |
| 0x027A46F, 0x03C9F46, 0x0793E8C, 0x0418A2B, |
| }; |
| |
| static const int32_t qmat22[MAT_SIZE] = { |
| 0x0040000, 0x0163151, 0x00B18A8, 0x0163629, 0x0105A5D, 0x0163629, |
| 0x0152A6F, 0x0104F6F, 0x0209EDF, 0x0152A6F, 0x0120000, 0x01D5B96, |
| 0x0206F5E, 0x00EADCB, 0x0120000, 0x00EED9F, 0x00D2D48, 0x01D30D5, |
| 0x01D30D5, 0x01A5A90, 0x00EED9F, 0x02D75E2, 0x029697B, 0x0344334, |
| 0x0374EAE, 0x0344334, 0x014B4BD, 0x016BAF1, 0x00C23BB, 0x01023A3, |
| 0x02A16C6, 0x03035FE, 0x03035FE, 0x02A16C6, 0x0408E8B, 0x0308EEC, |
| 0x044E20D, 0x03FA3BE, 0x026CD8D, 0x02A0000, 0x026CD8D, 0x01FD1DF, |
| 0x0089C42, 0x0114D94, 0x01D4601, 0x021C8EE, 0x021C8EE, 0x03A8C01, |
| 0x045364F, 0x03F9644, 0x033F46F, 0x01B2974, 0x019FA38, 0x00FE591, |
| 0x01BDDA8, 0x029ABCC, 0x0535797, 0x06F769E, 0x05A2D6E, 0x03FD9C9, |
| 0x0168B5C, 0x022A428, 0x0454850, 0x0257386, |
| }; |
| |
| static const int32_t qmat23[MAT_SIZE] = { |
| 0x0040000, 0x0163151, 0x00B18A8, 0x0163629, 0x0105A5D, 0x0163629, |
| 0x01D659B, 0x016A737, 0x02D4E6E, 0x01D659B, 0x01A0000, 0x028C650, |
| 0x02C6281, 0x0146328, 0x01A0000, 0x0146D96, 0x0120812, 0x0297B4A, |
| 0x0297B4A, 0x0241023, 0x0146D96, 0x02D75E2, 0x029697B, 0x0344334, |
| 0x0374EAE, 0x0344334, 0x014B4BD, 0x016BAF1, 0x00C23BB, 0x01023A3, |
| 0x02A16C6, 0x03035FE, 0x03035FE, 0x02A16C6, 0x0408E8B, 0x0308EEC, |
| 0x08B4BF9, 0x080B185, 0x04D9B1B, 0x0540000, 0x04D9B1B, 0x04058C2, |
| 0x011697F, 0x0229B27, 0x03B2EEB, 0x04391DC, 0x04391DC, 0x0765DD6, |
| 0x08A6C9E, 0x0FFA546, 0x0CEBCA6, 0x06D43D9, 0x0675E53, 0x03FE951, |
| 0x03801F0, 0x053C472, 0x0A788E4, 0x0E007C1, 0x0B538D6, 0x0804988, |
| 0x02D4E36, 0x0454850, 0x08A90A0, 0x04AE70D, |
| }; |
| |
| static const int32_t qmat24[MAT_SIZE] = { |
| 0x0040000, 0x018F77B, 0x00C7BBD, 0x018FCEF, 0x01265A8, 0x018FCEF, |
| 0x017CFBD, 0x012595D, 0x024B2BB, 0x017CFBD, 0x0144000, 0x0210708, |
| 0x0247D4A, 0x0108384, 0x0144000, 0x010CB53, 0x00ED2F1, 0x020D6F0, |
| 0x020D6F0, 0x01DA5E2, 0x010CB53, 0x033249E, 0x02E96AA, 0x03ACB9B, |
| 0x03E3883, 0x03ACB9B, 0x0174B55, 0x019924F, 0x00DA832, 0x0122817, |
| 0x02F599F, 0x0363CBD, 0x0363CBD, 0x02F599F, 0x048A05C, 0x036A0CA, |
| 0x04D7E4F, 0x0479835, 0x02BA73F, 0x02F4000, 0x02BA73F, 0x023CC1B, |
| 0x009AFCA, 0x0137746, 0x020EEC1, 0x026020C, 0x026020C, 0x041DD81, |
| 0x04DDD19, 0x047890D, 0x03A72FD, 0x01E8EA3, 0x01D397F, 0x011E243, |
| 0x01F595C, 0x02EE145, 0x05DC28A, 0x07D6572, 0x065731C, 0x047D502, |
| 0x0195CC7, 0x026F8AD, 0x04DF15A, 0x02A21F7, |
| }; |
| |
| static const int32_t qmat25[MAT_SIZE] = { |
| 0x0040000, 0x018F77B, 0x00C7BBD, 0x018FCEF, 0x01265A8, 0x018FCEF, |
| 0x021124E, 0x0197C1E, 0x032F83C, 0x021124E, 0x01D4000, 0x02DDF1A, |
| 0x031EED1, 0x016EF8D, 0x01D4000, 0x016FB49, 0x0144914, 0x02EAAB3, |
| 0x02EAAB3, 0x0289228, 0x016FB49, 0x033249E, 0x02E96AA, 0x03ACB9B, |
| 0x03E3883, 0x03ACB9B, 0x0174B55, 0x019924F, 0x00DA832, 0x0122817, |
| 0x02F599F, 0x0363CBD, 0x0363CBD, 0x02F599F, 0x048A05C, 0x036A0CA, |
| 0x09CB578, 0x090C7B6, 0x0574E7E, 0x05E8000, 0x0574E7E, 0x04863DB, |
| 0x01396AF, 0x026EE8C, 0x04294C8, 0x04C0418, 0x04C0418, 0x0852991, |
| 0x09BBA32, 0x11F99EF, 0x0E8943B, 0x07AEC54, 0x0744A1D, 0x047E67C, |
| 0x03F022E, 0x05E3D00, 0x0BC7A00, 0x0FC08BA, 0x0CBDFF1, 0x09052B9, |
| 0x032F7FC, 0x04DF15A, 0x09BE2B4, 0x05443EE, |
| }; |
| |
| static const int32_t qmat26[MAT_SIZE] = { |
| 0x0040000, 0x01BBDA5, 0x00DDED2, 0x01BC3B4, 0x01470F4, 0x01BC3B4, |
| 0x01A750B, 0x014634B, 0x028C697, 0x01A750B, 0x0168000, 0x024B27B, |
| 0x0288B36, 0x012593E, 0x0168000, 0x012A906, 0x010789A, 0x0247D0B, |
| 0x0247D0B, 0x020F134, 0x012A906, 0x038D35A, 0x033C3D9, 0x0415402, |
| 0x0452259, 0x0415402, 0x019E1ED, 0x01C69AD, 0x00F2CAA, 0x0142C8B, |
| 0x0349C77, 0x03C437D, 0x03C437D, 0x0349C77, 0x050B22E, 0x03CB2A7, |
| 0x0561A91, 0x04F8CAD, 0x03080F1, 0x0348000, 0x03080F1, 0x027C656, |
| 0x00AC352, 0x015A0F9, 0x0249781, 0x02A3B2A, 0x02A3B2A, 0x0492F02, |
| 0x05683E3, 0x04F7BD5, 0x040F18B, 0x021F3D1, 0x02078C6, 0x013DEF5, |
| 0x022D511, 0x03416BE, 0x0682D7D, 0x08B5446, 0x070B8CA, 0x04FD03B, |
| 0x01C2E32, 0x02B4D32, 0x0569A64, 0x02ED068, |
| }; |
| |
| static const int32_t qmat27[MAT_SIZE] = { |
| 0x0040000, 0x01BBDA5, 0x00DDED2, 0x01BC3B4, 0x01470F4, 0x01BC3B4, |
| 0x024BF01, 0x01C5105, 0x038A20A, 0x024BF01, 0x0208000, 0x032F7E4, |
| 0x0377B21, 0x0197BF2, 0x0208000, 0x01988FB, 0x0168A16, 0x033DA1D, |
| 0x033DA1D, 0x02D142C, 0x01988FB, 0x038D35A, 0x033C3D9, 0x0415402, |
| 0x0452259, 0x0415402, 0x019E1ED, 0x01C69AD, 0x00F2CAA, 0x0142C8B, |
| 0x0349C77, 0x03C437D, 0x03C437D, 0x0349C77, 0x050B22E, 0x03CB2A7, |
| 0x0AE1EF7, 0x0A0DDE6, 0x06101E2, 0x0690000, 0x06101E2, 0x0506EF3, |
| 0x015C3DF, 0x02B41F1, 0x049FAA6, 0x0547653, 0x0547653, 0x093F54C, |
| 0x0AD07C5, 0x13F8E97, 0x1026BD0, 0x08894CF, 0x08135E8, 0x04FE3A6, |
| 0x046026C, 0x068B58E, 0x0D16B1D, 0x11809B2, 0x0E2870C, 0x0A05BEA, |
| 0x038A1C3, 0x0569A64, 0x0AD34C8, 0x05DA0D0, |
| }; |
| |
| static const int32_t qmat28[MAT_SIZE] = { |
| 0x0040000, 0x01E83CF, 0x00F41E7, 0x01E8A79, 0x0167C3F, 0x01E8A79, |
| 0x01D1A59, 0x0166D39, 0x02CDA72, 0x01D1A59, 0x018C000, 0x0285DEE, |
| 0x02C9921, 0x0142EF7, 0x018C000, 0x01486BA, 0x0121E43, 0x0282325, |
| 0x0282325, 0x0243C86, 0x01486BA, 0x03E8216, 0x038F109, 0x047DC68, |
| 0x04C0C2F, 0x047DC68, 0x01C7884, 0x01F410B, 0x010B121, 0x0163100, |
| 0x039DF50, 0x0424A3D, 0x0424A3D, 0x039DF50, 0x058C3FF, 0x042C485, |
| 0x05EB6D3, 0x0578125, 0x0355AA3, 0x039C000, 0x0355AA3, 0x02BC092, |
| 0x00BD6DA, 0x017CAAB, 0x0284041, 0x02E7447, 0x02E7447, 0x0508082, |
| 0x05F2AAD, 0x0576E9E, 0x0477019, 0x0255900, 0x023B80D, 0x015DBA7, |
| 0x02650C6, 0x0394C38, 0x0729870, 0x0994319, 0x07BFE78, 0x057CB74, |
| 0x01EFF9E, 0x02FA1B7, 0x05F436E, 0x0337ED9, |
| }; |
| |
| static const int32_t qmat29[MAT_SIZE] = { |
| 0x0040000, 0x01E83CF, 0x00F41E7, 0x01E8A79, 0x0167C3F, 0x01E8A79, |
| 0x0286BB5, 0x01F25EC, 0x03E4BD8, 0x0286BB5, 0x023C000, 0x03810AE, |
| 0x03D0771, 0x01C0857, 0x023C000, 0x01C16AE, 0x018CB18, 0x0390986, |
| 0x0390986, 0x0319630, 0x01C16AE, 0x03E8216, 0x038F109, 0x047DC68, |
| 0x04C0C2F, 0x047DC68, 0x01C7884, 0x01F410B, 0x010B121, 0x0163100, |
| 0x039DF50, 0x0424A3D, 0x0424A3D, 0x039DF50, 0x058C3FF, 0x042C485, |
| 0x0BF8876, 0x0B0F417, 0x06AB545, 0x0738000, 0x06AB545, 0x0587A0B, |
| 0x017F10F, 0x02F9556, 0x0516083, 0x05CE88F, 0x05CE88F, 0x0A2C106, |
| 0x0BE5559, 0x15F8340, 0x11C4364, 0x0963D4B, 0x08E21B2, 0x057E0D0, |
| 0x04D02AB, 0x0732E1D, 0x0E65C39, 0x1340AAA, 0x0F92E27, 0x0B0651B, |
| 0x03E4B8A, 0x05F436E, 0x0BE86DC, 0x066FDB2, |
| }; |
| |
| static const int32_t qmat2A[MAT_SIZE] = { |
| 0x0040000, 0x02149F9, 0x010A4FD, 0x021513E, 0x018878B, 0x021513E, |
| 0x01FBFA7, 0x0187727, 0x030EE4E, 0x01FBFA7, 0x01B0000, 0x02C0961, |
| 0x030A70D, 0x01604B0, 0x01B0000, 0x016646E, 0x013C3EC, 0x02BC940, |
| 0x02BC940, 0x02787D8, 0x016646E, 0x04430D2, 0x03E1E38, 0x04E64CF, |
| 0x052F604, 0x04E64CF, 0x01F0F1C, 0x0221869, 0x0123599, 0x0183574, |
| 0x03F2229, 0x04850FC, 0x04850FC, 0x03F2229, 0x060D5D0, 0x048D662, |
| 0x0675314, 0x05F759C, 0x03A3454, 0x03F0000, 0x03A3454, 0x02FBACE, |
| 0x00CEA63, 0x019F45E, 0x02BE901, 0x032AD65, 0x032AD65, 0x057D202, |
| 0x067D176, 0x05F6166, 0x04DEEA7, 0x028BE2E, 0x026F754, 0x017D85A, |
| 0x029CC7B, 0x03E81B1, 0x07D0363, 0x0A731ED, 0x0874425, 0x05FC6AD, |
| 0x021D109, 0x033F63C, 0x067EC78, 0x0382D4A, |
| }; |
| |
| static const int32_t qmat2B[MAT_SIZE] = { |
| 0x0040000, 0x02149F9, 0x010A4FD, 0x021513E, 0x018878B, 0x021513E, |
| 0x02C1868, 0x021FAD3, 0x043F5A6, 0x02C1868, 0x0270000, 0x03D2978, |
| 0x04293C1, 0x01E94BC, 0x0270000, 0x01EA461, 0x01B0C1A, 0x03E38EF, |
| 0x03E38EF, 0x0361835, 0x01EA461, 0x04430D2, 0x03E1E38, 0x04E64CF, |
| 0x052F604, 0x04E64CF, 0x01F0F1C, 0x0221869, 0x0123599, 0x0183574, |
| 0x03F2229, 0x04850FC, 0x04850FC, 0x03F2229, 0x060D5D0, 0x048D662, |
| 0x0D0F1F6, 0x0C10A47, 0x07468A8, 0x07E0000, 0x07468A8, 0x0608524, |
| 0x01A1E3F, 0x033E8BB, 0x058C661, 0x0655ACA, 0x0655ACA, 0x0B18CC1, |
| 0x0CFA2ED, 0x17F77E9, 0x1361AF9, 0x0A3E5C6, 0x09B0D7D, 0x05FDDFA, |
| 0x05402E9, 0x07DA6AB, 0x0FB4D56, 0x1500BA2, 0x10FD541, 0x0C06E4C, |
| 0x043F550, 0x067EC78, 0x0CFD8F0, 0x0705A93, |
| }; |
| |
| static const int32_t qmat2C[MAT_SIZE] = { |
| 0x0040000, 0x0241023, 0x0120812, 0x0241803, 0x01A92D7, 0x0241803, |
| 0x02264F5, 0x01A8115, 0x035022A, 0x02264F5, 0x01D4000, 0x02FB4D3, |
| 0x034B4F9, 0x017DA6A, 0x01D4000, 0x0184222, 0x0156995, 0x02F6F5B, |
| 0x02F6F5B, 0x02AD32A, 0x0184222, 0x049DF8E, 0x0434B67, 0x054ED35, |
| 0x059DFDA, 0x054ED35, 0x021A5B4, 0x024EFC7, 0x013BA10, 0x01A39E8, |
| 0x0446502, 0x04E57BC, 0x04E57BC, 0x0446502, 0x068E7A2, 0x04EE840, |
| 0x06FEF56, 0x0676A14, 0x03F0E06, 0x0444000, 0x03F0E06, 0x033B50A, |
| 0x00DFDEB, 0x01C1E10, 0x02F91C1, 0x036E683, 0x036E683, 0x05F2382, |
| 0x0707840, 0x067542F, 0x0546D35, 0x02C235D, 0x02A369B, 0x019D50C, |
| 0x02D4830, 0x043B72B, 0x0876E56, 0x0B520C1, 0x09289D3, 0x067C1E6, |
| 0x024A275, 0x0384AC1, 0x0709582, 0x03CDBBA, |
| }; |
| |
| static const int32_t qmat2D[MAT_SIZE] = { |
| 0x0040000, 0x0241023, 0x0120812, 0x0241803, 0x01A92D7, 0x0241803, |
| 0x02FC51B, 0x024CFBA, 0x0499F73, 0x02FC51B, 0x02A4000, 0x0424242, |
| 0x0482011, 0x0212121, 0x02A4000, 0x0213214, 0x01D4D1D, 0x0436858, |
| 0x0436858, 0x03A9A39, 0x0213214, 0x049DF8E, 0x0434B67, 0x054ED35, |
| 0x059DFDA, 0x054ED35, 0x021A5B4, 0x024EFC7, 0x013BA10, 0x01A39E8, |
| 0x0446502, 0x04E57BC, 0x04E57BC, 0x0446502, 0x068E7A2, 0x04EE840, |
| 0x0E25B75, 0x0D12078, 0x07E1C0C, 0x0888000, 0x07E1C0C, 0x068903C, |
| 0x01C4B6F, 0x0383C20, 0x0602C3E, 0x06DCD06, 0x06DCD06, 0x0C0587C, |
| 0x0E0F081, 0x19F6C92, 0x14FF28E, 0x0B18E41, 0x0A7F947, 0x067DB24, |
| 0x05B0327, 0x0881F39, 0x1103E72, 0x16C0C9A, 0x1267C5C, 0x0D0777D, |
| 0x0499F17, 0x0709582, 0x0E12B04, 0x079B775, |
| }; |
| |
| static const int32_t qmat2E[MAT_SIZE] = { |
| 0x0040000, 0x026D64D, 0x0136B27, 0x026DEC9, 0x01C9E22, 0x026DEC9, |
| 0x0250A43, 0x01C8B03, 0x0391606, 0x0250A43, 0x01F8000, 0x0336046, |
| 0x038C2E5, 0x019B023, 0x01F8000, 0x01A1FD6, 0x0170F3E, 0x0331575, |
| 0x0331575, 0x02E1E7C, 0x01A1FD6, 0x04F8E4B, 0x0487897, 0x05B759C, |
| 0x060C9B0, 0x05B759C, 0x0243C4B, 0x027C725, 0x0153E87, 0x01C3E5D, |
| 0x049A7DA, 0x0545E7C, 0x0545E7C, 0x049A7DA, 0x070F973, 0x054FA1D, |
| 0x0788B98, 0x06F5E8C, 0x043E7B8, 0x0498000, 0x043E7B8, 0x037AF46, |
| 0x00F1173, 0x01E47C3, 0x0333A81, 0x03B1FA1, 0x03B1FA1, 0x0667502, |
| 0x0791F0A, 0x06F46F7, 0x05AEBC3, 0x02F888B, 0x02D75E2, 0x01BD1BE, |
| 0x030C3E5, 0x048ECA4, 0x091D948, 0x0C30F95, 0x09DCF81, 0x06FBD20, |
| 0x02773E0, 0x03C9F46, 0x0793E8C, 0x0418A2B, |
| }; |
| |
| static const int32_t qmat2F[MAT_SIZE] = { |
| 0x0040000, 0x026D64D, 0x0136B27, 0x026DEC9, 0x01C9E22, 0x026DEC9, |
| 0x03371CF, 0x027A4A1, 0x04F4941, 0x03371CF, 0x02D8000, 0x0475B0C, |
| 0x04DAC61, 0x023AD86, 0x02D8000, 0x023BFC6, 0x01F8E1F, 0x04897C2, |
| 0x04897C2, 0x03F1C3D, 0x023BFC6, 0x04F8E4B, 0x0487897, 0x05B759C, |
| 0x060C9B0, 0x05B759C, 0x0243C4B, 0x027C725, 0x0153E87, 0x01C3E5D, |
| 0x049A7DA, 0x0545E7C, 0x0545E7C, 0x049A7DA, 0x070F973, 0x054FA1D, |
| 0x0F3C4F4, 0x0E136A9, 0x087CF6F, 0x0930000, 0x087CF6F, 0x0709B54, |
| 0x01E789E, 0x03C8F85, 0x067921B, 0x0763F41, 0x0763F41, 0x0CF2437, |
| 0x0F23E14, 0x1BF613A, 0x169CA23, 0x0BF36BC, 0x0B4E511, 0x06FD84F, |
| 0x0620365, 0x09297C7, 0x1252F8F, 0x1880D93, 0x13D2377, 0x0E080AE, |
| 0x04F48DE, 0x0793E8C, 0x0F27D18, 0x0831457, |
| }; |
| |
| static const int32_t qmat30[MAT_SIZE] = { |
| 0x0040000, 0x02C62A1, 0x0163151, 0x02C6C53, 0x020B4B9, 0x02C6C53, |
| 0x02A54DF, 0x0209EDF, 0x0413DBE, 0x02A54DF, 0x0240000, 0x03AB72B, |
| 0x040DEBC, 0x01D5B96, 0x0240000, 0x01DDB3E, 0x01A5A90, 0x03A61AB, |
| 0x03A61AB, 0x034B520, 0x01DDB3E, 0x05AEBC3, 0x052D2F5, 0x0688669, |
| 0x06E9D5B, 0x0688669, 0x029697B, 0x02D75E2, 0x0184776, 0x0204745, |
| 0x0542D8C, 0x0606BFB, 0x0606BFB, 0x0542D8C, 0x0811D16, 0x0611DD8, |
| 0x089C41B, 0x07F477B, 0x04D9B1B, 0x0540000, 0x04D9B1B, 0x03FA3BE, |
| 0x0113883, 0x0229B27, 0x03A8C01, 0x04391DC, 0x04391DC, 0x0751803, |
| 0x08A6C9E, 0x07F2C88, 0x067E8DF, 0x03652E8, 0x033F46F, 0x01FCB22, |
| 0x037BB4F, 0x0535797, 0x0A6AF2E, 0x0DEED3C, 0x0B45ADD, 0x07FB392, |
| 0x02D16B7, 0x0454850, 0x08A90A0, 0x04AE70D, |
| }; |
| |
| static const int32_t qmat31[MAT_SIZE] = { |
| 0x0040000, 0x02C62A1, 0x0163151, 0x02C6C53, 0x020B4B9, 0x02C6C53, |
| 0x03ACB35, 0x02D4E6E, 0x05A9CDD, 0x03ACB35, 0x0340000, 0x0518CA0, |
| 0x058C501, 0x028C650, 0x0340000, 0x028DB2C, 0x0241023, 0x052F694, |
| 0x052F694, 0x0482046, 0x028DB2C, 0x05AEBC3, 0x052D2F5, 0x0688669, |
| 0x06E9D5B, 0x0688669, 0x029697B, 0x02D75E2, 0x0184776, 0x0204745, |
| 0x0542D8C, 0x0606BFB, 0x0606BFB, 0x0542D8C, 0x0811D16, 0x0611DD8, |
| 0x11697F2, 0x101630A, 0x09B3636, 0x0A80000, 0x09B3636, 0x080B185, |
| 0x022D2FE, 0x045364F, 0x0765DD6, 0x08723B8, 0x08723B8, 0x0ECBBAC, |
| 0x114D93C, 0x1FF4A8C, 0x19D794C, 0x0DA87B2, 0x0CEBCA6, 0x07FD2A3, |
| 0x07003E1, 0x0A788E4, 0x14F11C8, 0x1C00F83, 0x16A71AD, 0x1009310, |
| 0x05A9C6B, 0x08A90A0, 0x1152140, 0x095CE1A, |
| }; |
| |
| static const int32_t qmat32[MAT_SIZE] = { |
| 0x0040000, 0x031EEF6, 0x018F77B, 0x031F9DD, 0x024CB50, 0x031F9DD, |
| 0x02F9F7A, 0x024B2BB, 0x0496575, 0x02F9F7A, 0x0288000, 0x0420E11, |
| 0x048FA94, 0x0210708, 0x0288000, 0x02196A5, 0x01DA5E2, 0x041ADE0, |
| 0x041ADE0, 0x03B4BC4, 0x02196A5, 0x066493B, 0x05D2D54, 0x0759736, |
| 0x07C7107, 0x0759736, 0x02E96AA, 0x033249E, 0x01B5065, 0x024502E, |
| 0x05EB33D, 0x06C797A, 0x06C797A, 0x05EB33D, 0x09140B9, 0x06D4193, |
| 0x09AFC9E, 0x08F306A, 0x0574E7E, 0x05E8000, 0x0574E7E, 0x0479835, |
| 0x0135F94, 0x026EE8C, 0x041DD81, 0x04C0418, 0x04C0418, 0x083BB03, |
| 0x09BBA32, 0x08F1219, 0x074E5FB, 0x03D1D45, 0x03A72FD, 0x023C486, |
| 0x03EB2B9, 0x05DC28A, 0x0BB8514, 0x0FACAE4, 0x0CAE638, 0x08FAA04, |
| 0x032B98E, 0x04DF15A, 0x09BE2B4, 0x05443EE, |
| }; |
| |
| static const int32_t qmat33[MAT_SIZE] = { |
| 0x0040000, 0x031EEF6, 0x018F77B, 0x031F9DD, 0x024CB50, 0x031F9DD, |
| 0x042249C, 0x032F83C, 0x065F078, 0x042249C, 0x03A8000, 0x05BBE34, |
| 0x063DDA2, 0x02DDF1A, 0x03A8000, 0x02DF691, 0x0289228, 0x05D5567, |
| 0x05D5567, 0x051244F, 0x02DF691, 0x066493B, 0x05D2D54, 0x0759736, |
| 0x07C7107, 0x0759736, 0x02E96AA, 0x033249E, 0x01B5065, 0x024502E, |
| 0x05EB33D, 0x06C797A, 0x06C797A, 0x05EB33D, 0x09140B9, 0x06D4193, |
| 0x1396AF0, 0x1218F6B, 0x0AE9CFD, 0x0BD0000, 0x0AE9CFD, 0x090C7B6, |
| 0x0272D5E, 0x04DDD19, 0x0852991, 0x098082F, 0x098082F, 0x10A5322, |
| 0x1377463, 0x23F33DD, 0x1D12876, 0x0F5D8A9, 0x0E8943B, 0x08FCCF7, |
| 0x07E045D, 0x0BC7A00, 0x178F401, 0x1F81173, 0x197BFE2, 0x120A572, |
| 0x065EFF9, 0x09BE2B4, 0x137C568, 0x0A887DD, |
| }; |
| |
| static const int32_t qmat34[MAT_SIZE] = { |
| 0x0040000, 0x0377B4A, 0x01BBDA5, 0x0378768, 0x028E1E8, 0x0378768, |
| 0x034EA16, 0x028C697, 0x0518D2D, 0x034EA16, 0x02D0000, 0x04964F6, |
| 0x051166B, 0x024B27B, 0x02D0000, 0x025520D, 0x020F134, 0x048FA15, |
| 0x048FA15, 0x041E268, 0x025520D, 0x071A6B4, 0x06787B3, 0x082A803, |
| 0x08A44B2, 0x082A803, 0x033C3D9, 0x038D35A, 0x01E5954, 0x0285917, |
| 0x06938EF, 0x07886FA, 0x07886FA, 0x06938EF, 0x0A1645B, 0x079654E, |
| 0x0AC3522, 0x09F195A, 0x06101E2, 0x0690000, 0x06101E2, 0x04F8CAD, |
| 0x01586A4, 0x02B41F1, 0x0492F02, 0x0547653, 0x0547653, 0x0925E03, |
| 0x0AD07C5, 0x09EF7AA, 0x081E317, 0x043E7A2, 0x040F18B, 0x027BDEB, |
| 0x045AA23, 0x0682D7D, 0x0D05AFA, 0x116A88B, 0x0E17194, 0x09FA076, |
| 0x0385C65, 0x0569A64, 0x0AD34C8, 0x05DA0D0, |
| }; |
| |
| static const int32_t qmat35[MAT_SIZE] = { |
| 0x0040000, 0x0377B4A, 0x01BBDA5, 0x0378768, 0x028E1E8, 0x0378768, |
| 0x0497E02, 0x038A20A, 0x0714414, 0x0497E02, 0x0410000, 0x065EFC8, |
| 0x06EF642, 0x032F7E4, 0x0410000, 0x03311F7, 0x02D142C, 0x067B439, |
| 0x067B439, 0x05A2858, 0x03311F7, 0x071A6B4, 0x06787B3, 0x082A803, |
| 0x08A44B2, 0x082A803, 0x033C3D9, 0x038D35A, 0x01E5954, 0x0285917, |
| 0x06938EF, 0x07886FA, 0x07886FA, 0x06938EF, 0x0A1645B, 0x079654E, |
| 0x15C3DEF, 0x141BBCC, 0x0C203C3, 0x0D20000, 0x0C203C3, 0x0A0DDE6, |
| 0x02B87BE, 0x05683E3, 0x093F54C, 0x0A8ECA7, 0x0A8ECA7, 0x127EA97, |
| 0x15A0F8B, 0x27F1D2F, 0x204D79F, 0x111299F, 0x1026BD0, 0x09FC74C, |
| 0x08C04D9, 0x0D16B1D, 0x1A2D63A, 0x2301364, 0x1C50E18, 0x140B7D4, |
| 0x0714386, 0x0AD34C8, 0x15A6990, 0x0BB41A0, |
| }; |
| |
| static const int32_t qmat36[MAT_SIZE] = { |
| 0x0040000, 0x03D079E, 0x01E83CF, 0x03D14F2, 0x02CF87F, 0x03D14F2, |
| 0x03A34B2, 0x02CDA72, 0x059B4E5, 0x03A34B2, 0x0318000, 0x050BBDC, |
| 0x0593243, 0x0285DEE, 0x0318000, 0x0290D75, 0x0243C86, 0x050464B, |
| 0x050464B, 0x048790C, 0x0290D75, 0x07D042C, 0x071E211, 0x08FB8D0, |
| 0x098185E, 0x08FB8D0, 0x038F109, 0x03E8216, 0x0216242, 0x02C6200, |
| 0x073BEA0, 0x0849479, 0x0849479, 0x073BEA0, 0x0B187FE, 0x0858909, |
| 0x0BD6DA5, 0x0AF0249, 0x06AB545, 0x0738000, 0x06AB545, 0x0578125, |
| 0x017ADB5, 0x02F9556, 0x0508082, 0x05CE88F, 0x05CE88F, 0x0A10104, |
| 0x0BE5559, 0x0AEDD3B, 0x08EE032, 0x04AB1FF, 0x0477019, 0x02BB74F, |
| 0x04CA18D, 0x0729870, 0x0E530E0, 0x1328633, 0x0F7FCEF, 0x0AF96E8, |
| 0x03DFF3C, 0x05F436E, 0x0BE86DC, 0x066FDB2, |
| }; |
| |
| static const int32_t qmat37[MAT_SIZE] = { |
| 0x0040000, 0x03D079E, 0x01E83CF, 0x03D14F2, 0x02CF87F, 0x03D14F2, |
| 0x050D769, 0x03E4BD8, 0x07C97B0, 0x050D769, 0x0478000, 0x070215C, |
| 0x07A0EE2, 0x03810AE, 0x0478000, 0x0382D5C, 0x0319630, 0x072130C, |
| 0x072130C, 0x0632C61, 0x0382D5C, 0x07D042C, 0x071E211, 0x08FB8D0, |
| 0x098185E, 0x08FB8D0, 0x038F109, 0x03E8216, 0x0216242, 0x02C6200, |
| 0x073BEA0, 0x0849479, 0x0849479, 0x073BEA0, 0x0B187FE, 0x0858909, |
| 0x17F10ED, 0x161E82D, 0x0D56A8A, 0x0E70000, 0x0D56A8A, 0x0B0F417, |
| 0x02FE21E, 0x05F2AAD, 0x0A2C106, 0x0B9D11E, 0x0B9D11E, 0x145820D, |
| 0x17CAAB2, 0x2BF0680, 0x23886C9, 0x12C7A95, 0x11C4364, 0x0AFC1A0, |
| 0x09A0555, 0x0E65C39, 0x1CCB873, 0x2681554, 0x1F25C4D, 0x160CA36, |
| 0x07C9713, 0x0BE86DC, 0x17D0DB8, 0x0CDFB63, |
| }; |
| |
| static const int32_t qmat38[MAT_SIZE] = { |
| 0x0040000, 0x04293F2, 0x02149F9, 0x042A27C, 0x0310F16, 0x042A27C, |
| 0x03F7F4E, 0x030EE4E, 0x061DC9D, 0x03F7F4E, 0x0360000, 0x05812C1, |
| 0x0614E1A, 0x02C0961, 0x0360000, 0x02CC8DC, 0x02787D8, 0x0579280, |
| 0x0579280, 0x04F0FAF, 0x02CC8DC, 0x08861A5, 0x07C3C70, 0x09CC99D, |
| 0x0A5EC09, 0x09CC99D, 0x03E1E38, 0x04430D2, 0x0246B31, 0x0306AE8, |
| 0x07E4452, 0x090A1F9, 0x090A1F9, 0x07E4452, 0x0C1ABA1, 0x091ACC4, |
| 0x0CEA628, 0x0BEEB39, 0x07468A8, 0x07E0000, 0x07468A8, 0x05F759C, |
| 0x019D4C5, 0x033E8BB, 0x057D202, 0x0655ACA, 0x0655ACA, 0x0AFA404, |
| 0x0CFA2ED, 0x0BEC2CC, 0x09BDD4E, 0x0517C5D, 0x04DEEA7, 0x02FB0B3, |
| 0x05398F7, 0x07D0363, 0x0FA06C5, 0x14E63DA, 0x10E884B, 0x0BF8D5B, |
| 0x043A213, 0x067EC78, 0x0CFD8F0, 0x0705A93, |
| }; |
| |
| static const int32_t qmat39[MAT_SIZE] = { |
| 0x0040000, 0x04293F2, 0x02149F9, 0x042A27C, 0x0310F16, 0x042A27C, |
| 0x05830D0, 0x043F5A6, 0x087EB4B, 0x05830D0, 0x04E0000, 0x07A52F0, |
| 0x0852782, 0x03D2978, 0x04E0000, 0x03D48C2, 0x0361835, 0x07C71DE, |
| 0x07C71DE, 0x06C3069, 0x03D48C2, 0x08861A5, 0x07C3C70, 0x09CC99D, |
| 0x0A5EC09, 0x09CC99D, 0x03E1E38, 0x04430D2, 0x0246B31, 0x0306AE8, |
| 0x07E4452, 0x090A1F9, 0x090A1F9, 0x07E4452, 0x0C1ABA1, 0x091ACC4, |
| 0x1A1E3EB, 0x182148F, 0x0E8D151, 0x0FC0000, 0x0E8D151, 0x0C10A47, |
| 0x0343C7D, 0x067D176, 0x0B18CC1, 0x0CAB595, 0x0CAB595, 0x1631982, |
| 0x19F45DA, 0x2FEEFD2, 0x26C35F2, 0x147CB8C, 0x1361AF9, 0x0BFBBF4, |
| 0x0A805D1, 0x0FB4D56, 0x1F69AAC, 0x2A01744, 0x21FAA83, 0x180DC98, |
| 0x087EAA1, 0x0CFD8F0, 0x19FB1E0, 0x0E0B527, |
| }; |
| |
| static const int32_t qmat3A[MAT_SIZE] = { |
| 0x0040000, 0x0482046, 0x0241023, 0x0483007, 0x03525AD, 0x0483007, |
| 0x044C9EA, 0x035022A, 0x06A0454, 0x044C9EA, 0x03A8000, 0x05F69A7, |
| 0x06969F2, 0x02FB4D3, 0x03A8000, 0x0308444, 0x02AD32A, 0x05EDEB5, |
| 0x05EDEB5, 0x055A653, 0x0308444, 0x093BF1D, 0x08696CF, 0x0A9DA6A, |
| 0x0B3BFB4, 0x0A9DA6A, 0x0434B67, 0x049DF8E, 0x0277420, 0x03473D1, |
| 0x088CA03, 0x09CAF78, 0x09CAF78, 0x088CA03, 0x0D1CF44, 0x09DD07F, |
| 0x0DFDEAC, 0x0CED428, 0x07E1C0C, 0x0888000, 0x07E1C0C, 0x0676A14, |
| 0x01BFBD5, 0x0383C20, 0x05F2382, 0x06DCD06, 0x06DCD06, 0x0BE4704, |
| 0x0E0F081, 0x0CEA85D, 0x0A8DA6A, 0x05846BA, 0x0546D35, 0x033AA17, |
| 0x05A9060, 0x0876E56, 0x10EDCAB, 0x16A4182, 0x12513A7, 0x0CF83CD, |
| 0x04944EA, 0x0709582, 0x0E12B04, 0x079B775, |
| }; |
| |
| static const int32_t qmat3B[MAT_SIZE] = { |
| 0x0040000, 0x0482046, 0x0241023, 0x0483007, 0x03525AD, 0x0483007, |
| 0x05F8A36, 0x0499F73, 0x0933EE7, 0x05F8A36, 0x0548000, 0x0848484, |
| 0x0904022, 0x0424242, 0x0548000, 0x0426427, 0x03A9A39, 0x086D0B1, |
| 0x086D0B1, 0x0753472, 0x0426427, 0x093BF1D, 0x08696CF, 0x0A9DA6A, |
| 0x0B3BFB4, 0x0A9DA6A, 0x0434B67, 0x049DF8E, 0x0277420, 0x03473D1, |
| 0x088CA03, 0x09CAF78, 0x09CAF78, 0x088CA03, 0x0D1CF44, 0x09DD07F, |
| 0x1C4B6EA, 0x1A240F0, 0x0FC3818, 0x1110000, 0x0FC3818, 0x0D12078, |
| 0x03896DD, 0x0707840, 0x0C0587C, 0x0DB9A0C, 0x0DB9A0C, 0x180B0F8, |
| 0x1C1E101, 0x33ED923, 0x29FE51C, 0x1631C82, 0x14FF28E, 0x0CFB649, |
| 0x0B6064D, 0x1103E72, 0x2207CE5, 0x2D81935, 0x24CF8B9, 0x1A0EEFA, |
| 0x0933E2E, 0x0E12B04, 0x1C25608, 0x0F36EEA, |
| }; |
| |
| static const int32_t qmat3C[MAT_SIZE] = { |
| 0x0040000, 0x04DAC9A, 0x026D64D, 0x04DBD91, 0x0393C44, 0x04DBD91, |
| 0x04A1486, 0x0391606, 0x0722C0C, 0x04A1486, 0x03F0000, 0x066C08C, |
| 0x07185C9, 0x0336046, 0x03F0000, 0x0343FAC, 0x02E1E7C, 0x0662AEB, |
| 0x0662AEB, 0x05C3CF7, 0x0343FAC, 0x09F1C95, 0x090F12D, 0x0B6EB37, |
| 0x0C19360, 0x0B6EB37, 0x0487897, 0x04F8E4B, 0x02A7D0F, 0x0387CBA, |
| 0x0934FB5, 0x0A8BCF7, 0x0A8BCF7, 0x0934FB5, 0x0E1F2E6, 0x0A9F43A, |
| 0x0F1172F, 0x0DEBD17, 0x087CF6F, 0x0930000, 0x087CF6F, 0x06F5E8C, |
| 0x01E22E6, 0x03C8F85, 0x0667502, 0x0763F41, 0x0763F41, 0x0CCEA05, |
| 0x0F23E14, 0x0DE8DEE, 0x0B5D786, 0x05F1117, 0x05AEBC3, 0x037A37C, |
| 0x06187CA, 0x091D948, 0x123B291, 0x1861F29, 0x13B9F02, 0x0DF7A3F, |
| 0x04EE7C1, 0x0793E8C, 0x0F27D18, 0x0831457, |
| }; |
| |
| static const int32_t qmat3D[MAT_SIZE] = { |
| 0x0040000, 0x04DAC9A, 0x026D64D, 0x04DBD91, 0x0393C44, 0x04DBD91, |
| 0x066E39D, 0x04F4941, 0x09E9282, 0x066E39D, 0x05B0000, 0x08EB618, |
| 0x09B58C2, 0x0475B0C, 0x05B0000, 0x0477F8D, 0x03F1C3D, 0x0912F83, |
| 0x0912F83, 0x07E387B, 0x0477F8D, 0x09F1C95, 0x090F12D, 0x0B6EB37, |
| 0x0C19360, 0x0B6EB37, 0x0487897, 0x04F8E4B, 0x02A7D0F, 0x0387CBA, |
| 0x0934FB5, 0x0A8BCF7, 0x0A8BCF7, 0x0934FB5, 0x0E1F2E6, 0x0A9F43A, |
| 0x1E789E8, 0x1C26D51, 0x10F9EDE, 0x1260000, 0x10F9EDE, 0x0E136A9, |
| 0x03CF13D, 0x0791F0A, 0x0CF2437, 0x0EC7E83, 0x0EC7E83, 0x19E486D, |
| 0x1E47C29, 0x37EC275, 0x2D39446, 0x17E6D78, 0x169CA23, 0x0DFB09D, |
| 0x0C406C9, 0x1252F8F, 0x24A5F1E, 0x3101B25, 0x27A46EE, 0x1C1015C, |
| 0x09E91BC, 0x0F27D18, 0x1E4FA30, 0x10628AD, |
| }; |
| |
| static const int32_t qmat3E[MAT_SIZE] = { |
| 0x0040000, 0x058C543, 0x02C62A1, 0x058D8A6, 0x0416973, 0x058D8A6, |
| 0x054A9BD, 0x0413DBE, 0x0827B7B, 0x054A9BD, 0x0480000, 0x0756E57, |
| 0x081BD78, 0x03AB72B, 0x0480000, 0x03BB67B, 0x034B520, 0x074C355, |
| 0x074C355, 0x0696A3F, 0x03BB67B, 0x0B5D786, 0x0A5A5EB, 0x0D10CD2, |
| 0x0DD3AB7, 0x0D10CD2, 0x052D2F5, 0x05AEBC3, 0x0308EEC, 0x0408E8B, |
| 0x0A85B18, 0x0C0D7F6, 0x0C0D7F6, 0x0A85B18, 0x1023A2C, 0x0C23BB1, |
| 0x1138836, 0x0FE8EF6, 0x09B3636, 0x0A80000, 0x09B3636, 0x07F477B, |
| 0x0227107, 0x045364F, 0x0751803, 0x08723B8, 0x08723B8, 0x0EA3005, |
| 0x114D93C, 0x0FE5910, 0x0CFD1BE, 0x06CA5D1, 0x067E8DF, 0x03F9644, |
| 0x06F769E, 0x0A6AF2E, 0x14D5E5C, 0x1BDDA78, 0x168B5B9, 0x0FF6724, |
| 0x05A2D6E, 0x08A90A0, 0x1152140, 0x095CE1A, |
| }; |
| |
| static const int32_t qmat3F[MAT_SIZE] = { |
| 0x0040000, 0x058C543, 0x02C62A1, 0x058D8A6, 0x0416973, 0x058D8A6, |
| 0x075966A, 0x05A9CDD, 0x0B539BA, 0x075966A, 0x0680000, 0x0A31940, |
| 0x0B18A03, 0x0518CA0, 0x0680000, 0x051B658, 0x0482046, 0x0A5ED28, |
| 0x0A5ED28, 0x090408D, 0x051B658, 0x0B5D786, 0x0A5A5EB, 0x0D10CD2, |
| 0x0DD3AB7, 0x0D10CD2, 0x052D2F5, 0x05AEBC3, 0x0308EEC, 0x0408E8B, |
| 0x0A85B18, 0x0C0D7F6, 0x0C0D7F6, 0x0A85B18, 0x1023A2C, 0x0C23BB1, |
| 0x22D2FE4, 0x202C614, 0x1366C6C, 0x1500000, 0x1366C6C, 0x101630A, |
| 0x045A5FD, 0x08A6C9E, 0x0ECBBAC, 0x10E4771, 0x10E4771, 0x1D97758, |
| 0x229B278, 0x3FE9518, 0x33AF299, 0x1B50F65, 0x19D794C, 0x0FFA546, |
| 0x0E007C1, 0x14F11C8, 0x29E2390, 0x3801F06, 0x2D4E359, 0x2012620, |
| 0x0B538D6, 0x1152140, 0x22A4280, 0x12B9C33, |
| }; |
| |
| static const int32_t qmat40[MAT_SIZE] = { |
| 0x0040000, 0x063DDEB, 0x031EEF6, 0x063F3BB, 0x04996A1, 0x063F3BB, |
| 0x05F3EF5, 0x0496575, 0x092CAEB, 0x05F3EF5, 0x0510000, 0x0841C22, |
| 0x091F527, 0x0420E11, 0x0510000, 0x0432D4B, 0x03B4BC4, 0x0835BC0, |
| 0x0835BC0, 0x0769787, 0x0432D4B, 0x0CC9277, 0x0BA5AA8, 0x0EB2E6C, |
| 0x0F8E20D, 0x0EB2E6C, 0x05D2D54, 0x066493B, 0x036A0CA, 0x048A05C, |
| 0x0BD667B, 0x0D8F2F5, 0x0D8F2F5, 0x0BD667B, 0x1228171, 0x0DA8327, |
| 0x135F93D, 0x11E60D5, 0x0AE9CFD, 0x0BD0000, 0x0AE9CFD, 0x08F306A, |
| 0x026BF28, 0x04DDD19, 0x083BB03, 0x098082F, 0x098082F, 0x1077606, |
| 0x1377463, 0x11E2432, 0x0E9CBF6, 0x07A3A8B, 0x074E5FB, 0x047890D, |
| 0x07D6572, 0x0BB8514, 0x1770A28, 0x1F595C7, 0x195CC70, 0x11F5408, |
| 0x065731C, 0x09BE2B4, 0x137C568, 0x0A887DD, |
| }; |
| |
| static const int32_t qmat41[MAT_SIZE] = { |
| 0x0040000, 0x063DDEB, 0x031EEF6, 0x063F3BB, 0x04996A1, 0x063F3BB, |
| 0x0844938, 0x065F078, 0x0CBE0F1, 0x0844938, 0x0750000, 0x0B77C68, |
| 0x0C7BB43, 0x05BBE34, 0x0750000, 0x05BED23, 0x051244F, 0x0BAAACD, |
| 0x0BAAACD, 0x0A2489E, 0x05BED23, 0x0CC9277, 0x0BA5AA8, 0x0EB2E6C, |
| 0x0F8E20D, 0x0EB2E6C, 0x05D2D54, 0x066493B, 0x036A0CA, 0x048A05C, |
| 0x0BD667B, 0x0D8F2F5, 0x0D8F2F5, 0x0BD667B, 0x1228171, 0x0DA8327, |
| 0x272D5E1, 0x2431ED6, 0x15D39F9, 0x17A0000, 0x15D39F9, 0x1218F6B, |
| 0x04E5ABC, 0x09BBA32, 0x10A5322, 0x130105F, 0x130105F, 0x214A643, |
| 0x26EE8C7, 0x47E67BB, 0x3A250EC, 0x1EBB151, 0x1D12876, 0x11F99EF, |
| 0x0FC08BA, 0x178F401, 0x2F1E802, 0x3F022E7, 0x32F7FC4, 0x2414AE4, |
| 0x0CBDFF1, 0x137C568, 0x26F8AD0, 0x1510FBA, |
| }; |
| |
| static const int32_t qmat42[MAT_SIZE] = { |
| 0x0040000, 0x06EF693, 0x0377B4A, 0x06F0ECF, 0x051C3CF, 0x06F0ECF, |
| 0x069D42D, 0x0518D2D, 0x0A31A5A, 0x069D42D, 0x05A0000, 0x092C9ED, |
| 0x0A22CD6, 0x04964F6, 0x05A0000, 0x04AA41A, 0x041E268, 0x091F42B, |
| 0x091F42B, 0x083C4CF, 0x04AA41A, 0x0E34D68, 0x0CF0F65, 0x1055006, |
| 0x1148964, 0x1055006, 0x06787B3, 0x071A6B4, 0x03CB2A7, 0x050B22E, |
| 0x0D271DE, 0x0F10DF4, 0x0F10DF4, 0x0D271DE, 0x142C8B7, 0x0F2CA9D, |
| 0x1586A43, 0x13E32B4, 0x0C203C3, 0x0D20000, 0x0C203C3, 0x09F195A, |
| 0x02B0D48, 0x05683E3, 0x0925E03, 0x0A8ECA7, 0x0A8ECA7, 0x124BC06, |
| 0x15A0F8B, 0x13DEF54, 0x103C62D, 0x087CF45, 0x081E317, 0x04F7BD5, |
| 0x08B5446, 0x0D05AFA, 0x1A0B5F3, 0x22D5116, 0x1C2E328, 0x13F40EC, |
| 0x070B8CA, 0x0AD34C8, 0x15A6990, 0x0BB41A0, |
| }; |
| |
| static const int32_t qmat43[MAT_SIZE] = { |
| 0x0040000, 0x06EF693, 0x0377B4A, 0x06F0ECF, 0x051C3CF, 0x06F0ECF, |
| 0x092FC05, 0x0714414, 0x0E28828, 0x092FC05, 0x0820000, 0x0CBDF90, |
| 0x0DDEC84, 0x065EFC8, 0x0820000, 0x06623EE, 0x05A2858, 0x0CF6872, |
| 0x0CF6872, 0x0B450B0, 0x06623EE, 0x0E34D68, 0x0CF0F65, 0x1055006, |
| 0x1148964, 0x1055006, 0x06787B3, 0x071A6B4, 0x03CB2A7, 0x050B22E, |
| 0x0D271DE, 0x0F10DF4, 0x0F10DF4, 0x0D271DE, 0x142C8B7, 0x0F2CA9D, |
| 0x2B87BDD, 0x2837799, 0x1840787, 0x1A40000, 0x1840787, 0x141BBCC, |
| 0x0570F7C, 0x0AD07C5, 0x127EA97, 0x151D94D, 0x151D94D, 0x24FD52E, |
| 0x2B41F16, 0x4FE3A5E, 0x409AF3F, 0x222533E, 0x204D79F, 0x13F8E97, |
| 0x11809B2, 0x1A2D63A, 0x345AC74, 0x46026C7, 0x38A1C30, 0x2816FA7, |
| 0x0E2870C, 0x15A6990, 0x2B4D320, 0x1768340, |
| }; |
| |
| static const int32_t qmat44[MAT_SIZE] = { |
| 0x0040000, 0x07A0F3C, 0x03D079E, 0x07A29E4, 0x059F0FE, 0x07A29E4, |
| 0x0746964, 0x059B4E5, 0x0B369CA, 0x0746964, 0x0630000, 0x0A177B8, |
| 0x0B26485, 0x050BBDC, 0x0630000, 0x0521AE9, 0x048790C, 0x0A08C95, |
| 0x0A08C95, 0x090F217, 0x0521AE9, 0x0FA0858, 0x0E3C423, 0x11F71A0, |
| 0x13030BB, 0x11F71A0, 0x071E211, 0x07D042C, 0x042C485, 0x058C3FF, |
| 0x0E77D40, 0x10928F2, 0x10928F2, 0x0E77D40, 0x1630FFC, 0x10B1213, |
| 0x17ADB4A, 0x15E0492, 0x0D56A8A, 0x0E70000, 0x0D56A8A, 0x0AF0249, |
| 0x02F5B69, 0x05F2AAD, 0x0A10104, 0x0B9D11E, 0x0B9D11E, 0x1420207, |
| 0x17CAAB2, 0x15DBA76, 0x11DC065, 0x09563FF, 0x08EE032, 0x0576E9E, |
| 0x0994319, 0x0E530E0, 0x1CA61BF, 0x2650C65, 0x1EFF9DF, 0x15F2DD1, |
| 0x07BFE78, 0x0BE86DC, 0x17D0DB8, 0x0CDFB63, |
| }; |
| |
| static const int32_t qmat45[MAT_SIZE] = { |
| 0x0040000, 0x07A0F3C, 0x03D079E, 0x07A29E4, 0x059F0FE, 0x07A29E4, |
| 0x0A1AED2, 0x07C97B0, 0x0F92F5F, 0x0A1AED2, 0x08F0000, 0x0E042B8, |
| 0x0F41DC4, 0x070215C, 0x08F0000, 0x0705AB9, 0x0632C61, 0x0E42617, |
| 0x0E42617, 0x0C658C1, 0x0705AB9, 0x0FA0858, 0x0E3C423, 0x11F71A0, |
| 0x13030BB, 0x11F71A0, 0x071E211, 0x07D042C, 0x042C485, 0x058C3FF, |
| 0x0E77D40, 0x10928F2, 0x10928F2, 0x0E77D40, 0x1630FFC, 0x10B1213, |
| 0x2FE21DA, 0x2C3D05B, 0x1AAD514, 0x1CE0000, 0x1AAD514, 0x161E82D, |
| 0x05FC43B, 0x0BE5559, 0x145820D, 0x173A23B, 0x173A23B, 0x28B0419, |
| 0x2F95565, 0x57E0D01, 0x4710D92, 0x258F52A, 0x23886C9, 0x15F8340, |
| 0x1340AAA, 0x1CCB873, 0x39970E6, 0x4D02AA8, 0x3E4B89B, 0x2C1946B, |
| 0x0F92E27, 0x17D0DB8, 0x2FA1B6F, 0x19BF6C7, |
| }; |
| |
| static const int32_t qmat46[MAT_SIZE] = { |
| 0x0040000, 0x08527E4, 0x04293F2, 0x08544F9, 0x0621E2C, 0x08544F9, |
| 0x07EFE9C, 0x061DC9D, 0x0C3B939, 0x07EFE9C, 0x06C0000, 0x0B02582, |
| 0x0C29C34, 0x05812C1, 0x06C0000, 0x05991B9, 0x04F0FAF, 0x0AF2500, |
| 0x0AF2500, 0x09E1F5F, 0x05991B9, 0x110C349, 0x0F878E0, 0x139933B, |
| 0x14BD812, 0x139933B, 0x07C3C70, 0x08861A5, 0x048D662, 0x060D5D0, |
| 0x0FC88A3, 0x12143F1, 0x12143F1, 0x0FC88A3, 0x1835742, 0x1235989, |
| 0x19D4C51, 0x17DD671, 0x0E8D151, 0x0FC0000, 0x0E8D151, 0x0BEEB39, |
| 0x033A98A, 0x067D176, 0x0AFA404, 0x0CAB595, 0x0CAB595, 0x15F4808, |
| 0x19F45DA, 0x17D8598, 0x137BA9D, 0x0A2F8B9, 0x09BDD4E, 0x05F6166, |
| 0x0A731ED, 0x0FA06C5, 0x1F40D8B, 0x29CC7B4, 0x21D1096, 0x17F1AB5, |
| 0x0874425, 0x0CFD8F0, 0x19FB1E0, 0x0E0B527, |
| }; |
| |
| static const int32_t qmat47[MAT_SIZE] = { |
| 0x0040000, 0x08527E4, 0x04293F2, 0x08544F9, 0x0621E2C, 0x08544F9, |
| 0x0B061A0, 0x087EB4B, 0x10FD696, 0x0B061A0, 0x09C0000, 0x0F4A5E0, |
| 0x10A4F04, 0x07A52F0, 0x09C0000, 0x07A9184, 0x06C3069, 0x0F8E3BC, |
| 0x0F8E3BC, 0x0D860D3, 0x07A9184, 0x110C349, 0x0F878E0, 0x139933B, |
| 0x14BD812, 0x139933B, 0x07C3C70, 0x08861A5, 0x048D662, 0x060D5D0, |
| 0x0FC88A3, 0x12143F1, 0x12143F1, 0x0FC88A3, 0x1835742, 0x1235989, |
| 0x343C7D6, 0x304291D, 0x1D1A2A2, 0x1F80000, 0x1D1A2A2, 0x182148F, |
| 0x06878FB, 0x0CFA2ED, 0x1631982, 0x1956B29, 0x1956B29, 0x2C63305, |
| 0x33E8BB4, 0x5FDDFA4, 0x4D86BE5, 0x28F9717, 0x26C35F2, 0x17F77E9, |
| 0x1500BA2, 0x1F69AAC, 0x3ED3558, 0x5402E89, 0x43F5506, 0x301B92F, |
| 0x10FD541, 0x19FB1E0, 0x33F63BF, 0x1C16A4D, |
| }; |
| |
| static const int32_t qmat48[MAT_SIZE] = { |
| 0x0040000, 0x090408D, 0x0482046, 0x090600E, 0x06A4B5A, 0x090600E, |
| 0x08993D3, 0x06A0454, 0x0D408A9, 0x08993D3, 0x0750000, 0x0BED34D, |
| 0x0D2D3E3, 0x05F69A7, 0x0750000, 0x0610888, 0x055A653, 0x0BDBD6A, |
| 0x0BDBD6A, 0x0AB4CA7, 0x0610888, 0x1277E3A, 0x10D2D9D, 0x153B4D5, |
| 0x1677F69, 0x153B4D5, 0x08696CF, 0x093BF1D, 0x04EE840, 0x068E7A2, |
| 0x1119406, 0x1395EF0, 0x1395EF0, 0x1119406, 0x1A39E87, 0x13BA0FF, |
| 0x1BFBD57, 0x19DA850, 0x0FC3818, 0x1110000, 0x0FC3818, 0x0CED428, |
| 0x037F7AB, 0x0707840, 0x0BE4704, 0x0DB9A0C, 0x0DB9A0C, 0x17C8E08, |
| 0x1C1E101, 0x19D50BB, 0x151B4D4, 0x0B08D73, 0x0A8DA6A, 0x067542F, |
| 0x0B520C1, 0x10EDCAB, 0x21DB956, 0x2D48303, 0x24A274D, 0x19F079A, |
| 0x09289D3, 0x0E12B04, 0x1C25608, 0x0F36EEA, |
| }; |
| |
| static const int32_t qmat49[MAT_SIZE] = { |
| 0x0040000, 0x090408D, 0x0482046, 0x090600E, 0x06A4B5A, 0x090600E, |
| 0x0BF146D, 0x0933EE7, 0x1267DCE, 0x0BF146D, 0x0A90000, 0x1090908, |
| 0x1208045, 0x0848484, 0x0A90000, 0x084C84F, 0x0753472, 0x10DA161, |
| 0x10DA161, 0x0EA68E4, 0x084C84F, 0x1277E3A, 0x10D2D9D, 0x153B4D5, |
| 0x1677F69, 0x153B4D5, 0x08696CF, 0x093BF1D, 0x04EE840, 0x068E7A2, |
| 0x1119406, 0x1395EF0, 0x1395EF0, 0x1119406, 0x1A39E87, 0x13BA0FF, |
| 0x3896DD3, 0x34481E0, 0x1F8702F, 0x2220000, 0x1F8702F, 0x1A240F0, |
| 0x0712DBA, 0x0E0F081, 0x180B0F8, 0x1B73417, 0x1B73417, 0x30161F0, |
| 0x383C203, 0x67DB247, 0x53FCA38, 0x2C63904, 0x29FE51C, 0x19F6C92, |
| 0x16C0C9A, 0x2207CE5, 0x440F9CA, 0x5B0326A, 0x499F171, 0x341DDF3, |
| 0x1267C5C, 0x1C25608, 0x384AC0F, 0x1E6DDD4, |
| }; |
| |
| static const int32_t qmat4A[MAT_SIZE] = { |
| 0x0040000, 0x09B5935, 0x04DAC9A, 0x09B7B22, 0x0727888, 0x09B7B22, |
| 0x094290B, 0x0722C0C, 0x0E45818, 0x094290B, 0x07E0000, 0x0CD8118, |
| 0x0E30B92, 0x066C08C, 0x07E0000, 0x0687F58, 0x05C3CF7, 0x0CC55D5, |
| 0x0CC55D5, 0x0B879EF, 0x0687F58, 0x13E392B, 0x121E25B, 0x16DD66F, |
| 0x18326C0, 0x16DD66F, 0x090F12D, 0x09F1C95, 0x054FA1D, 0x070F973, |
| 0x1269F69, 0x15179EF, 0x15179EF, 0x1269F69, 0x1C3E5CD, 0x153E875, |
| 0x1E22E5E, 0x1BD7A2F, 0x10F9EDE, 0x1260000, 0x10F9EDE, 0x0DEBD17, |
| 0x03C45CC, 0x0791F0A, 0x0CCEA05, 0x0EC7E83, 0x0EC7E83, 0x199D409, |
| 0x1E47C29, 0x1BD1BDD, 0x16BAF0C, 0x0BE222D, 0x0B5D786, 0x06F46F7, |
| 0x0C30F95, 0x123B291, 0x2476522, 0x30C3E52, 0x2773E04, 0x1BEF47E, |
| 0x09DCF81, 0x0F27D18, 0x1E4FA30, 0x10628AD, |
| }; |
| |
| static const int32_t qmat4B[MAT_SIZE] = { |
| 0x0040000, 0x09B5935, 0x04DAC9A, 0x09B7B22, 0x0727888, 0x09B7B22, |
| 0x0CDC73A, 0x09E9282, 0x13D2505, 0x0CDC73A, 0x0B60000, 0x11D6C30, |
| 0x136B185, 0x08EB618, 0x0B60000, 0x08EFF19, 0x07E387B, 0x1225F06, |
| 0x1225F06, 0x0FC70F6, 0x08EFF19, 0x13E392B, 0x121E25B, 0x16DD66F, |
| 0x18326C0, 0x16DD66F, 0x090F12D, 0x09F1C95, 0x054FA1D, 0x070F973, |
| 0x1269F69, 0x15179EF, 0x15179EF, 0x1269F69, 0x1C3E5CD, 0x153E875, |
| 0x3CF13D0, 0x384DAA2, 0x21F3DBD, 0x24C0000, 0x21F3DBD, 0x1C26D51, |
| 0x079E27A, 0x0F23E14, 0x19E486D, 0x1D8FD05, 0x1D8FD05, 0x33C90DB, |
| 0x3C8F852, 0x6FD84EA, 0x5A7288B, 0x2FCDAF0, 0x2D39446, 0x1BF613A, |
| 0x1880D93, 0x24A5F1E, 0x494BE3C, 0x620364A, 0x4F48DDC, 0x38202B7, |
| 0x13D2377, 0x1E4FA30, 0x3C9F45F, 0x20C515A, |
| }; |
| |
| static const int32_t qmat4C[MAT_SIZE] = { |
| 0x0040000, 0x1208119, 0x090408D, 0x120C01B, 0x0D496B4, 0x120C01B, |
| 0x11327A7, 0x0D408A9, 0x1A81151, 0x11327A7, 0x0EA0000, 0x17DA69B, |
| 0x1A5A7C7, 0x0BED34D, 0x0EA0000, 0x0C21110, 0x0AB4CA7, 0x17B7AD5, |
| 0x17B7AD5, 0x156994E, 0x0C21110, 0x24EFC74, 0x21A5B3B, 0x2A769A9, |
| 0x2CEFED2, 0x2A769A9, 0x10D2D9D, 0x1277E3A, 0x09DD07F, 0x0D1CF44, |
| 0x223280D, 0x272BDE0, 0x272BDE0, 0x223280D, 0x3473D0E, 0x27741FE, |
| 0x37F7AAF, 0x33B50A0, 0x1F8702F, 0x2220000, 0x1F8702F, 0x19DA850, |
| 0x06FEF56, 0x0E0F081, 0x17C8E08, 0x1B73417, 0x1B73417, 0x2F91C11, |
| 0x383C203, 0x33AA175, 0x2A369A9, 0x1611AE6, 0x151B4D4, 0x0CEA85D, |
| 0x16A4182, 0x21DB956, 0x43B72AC, 0x5A90607, 0x4944E9A, 0x33E0F34, |
| 0x12513A7, 0x1C25608, 0x384AC0F, 0x1E6DDD4, |
| }; |
| |
| static const int32_t qmat4D[MAT_SIZE] = { |
| 0x0040000, 0x1208119, 0x090408D, 0x120C01B, 0x0D496B4, 0x120C01B, |
| 0x17E28DA, 0x1267DCE, 0x24CFB9B, 0x17E28DA, 0x1520000, 0x2121210, |
| 0x2410089, 0x1090908, 0x1520000, 0x109909D, 0x0EA68E4, 0x21B42C3, |
| 0x21B42C3, 0x1D4D1C9, 0x109909D, 0x24EFC74, 0x21A5B3B, 0x2A769A9, |
| 0x2CEFED2, 0x2A769A9, 0x10D2D9D, 0x1277E3A, 0x09DD07F, 0x0D1CF44, |
| 0x223280D, 0x272BDE0, 0x272BDE0, 0x223280D, 0x3473D0E, 0x27741FE, |
| 0x712DBA6, 0x68903C0, 0x3F0E05F, 0x4440000, 0x3F0E05F, 0x34481E0, |
| 0x0E25B75, 0x1C1E101, 0x30161F0, 0x36E682F, 0x36E682F, 0x602C3DF, |
| 0x7078406, 0xCFB648E, 0xA7F9470, 0x58C7207, 0x53FCA38, 0x33ED923, |
| 0x2D81935, 0x440F9CA, 0x881F394, 0xB6064D3, 0x933E2E2, 0x683BBE7, |
| 0x24CF8B9, 0x384AC0F, 0x709581F, 0x3CDBBA7, |
| }; |
| |
| const int32_t *const ff_hq_quants[NUM_HQ_QUANTS][2][4] = { |
| { { qmat00, qmat02, qmat06, qmat0E }, { qmat01, qmat03, qmat07, qmat0F } }, |
| { { qmat02, qmat06, qmat0E, qmat16 }, { qmat03, qmat07, qmat0F, qmat17 } }, |
| { { qmat04, qmat0A, qmat12, qmat1E }, { qmat05, qmat0B, qmat13, qmat1F } }, |
| { { qmat06, qmat0E, qmat16, qmat22 }, { qmat07, qmat0F, qmat17, qmat23 } }, |
| { { qmat08, qmat10, qmat1A, qmat26 }, { qmat09, qmat11, qmat1B, qmat27 } }, |
| { { qmat0A, qmat12, qmat1E, qmat2A }, { qmat0B, qmat13, qmat1F, qmat2B } }, |
| { { qmat0C, qmat14, qmat20, qmat2E }, { qmat0D, qmat15, qmat21, qmat2F } }, |
| { { qmat0E, qmat16, qmat22, qmat30 }, { qmat0F, qmat17, qmat23, qmat31 } }, |
| { { qmat16, qmat22, qmat30, qmat3E }, { qmat17, qmat23, qmat31, qmat3F } }, |
| { { qmat18, qmat24, qmat32, qmat40 }, { qmat19, qmat25, qmat33, qmat41 } }, |
| { { qmat1A, qmat26, qmat34, qmat42 }, { qmat1B, qmat27, qmat35, qmat43 } }, |
| { { qmat1C, qmat28, qmat36, qmat44 }, { qmat1D, qmat29, qmat37, qmat45 } }, |
| { { qmat1E, qmat2A, qmat38, qmat46 }, { qmat1F, qmat2B, qmat39, qmat47 } }, |
| { { qmat20, qmat2E, qmat3C, qmat4A }, { qmat21, qmat2F, qmat3D, qmat4B } }, |
| { { qmat2C, qmat3A, qmat48, qmat4C }, { qmat2D, qmat3B, qmat49, qmat4D } }, |
| { { qmat3A, qmat48, qmat4C, qmat4C }, { qmat3B, qmat49, qmat4D, qmat4D } }, |
| }; |
| |
| const uint8_t ff_hq_ac_bits[NUM_HQ_AC_ENTRIES] = { |
| 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, |
| 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, |
| 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, |
| 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, |
| 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, |
| 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, |
| 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, |
| 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, |
| 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, |
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| }; |
| |
| const uint16_t ff_hq_ac_codes[NUM_HQ_AC_ENTRIES] = { |
| 0x0000, 0x0001, 0x0004, 0x0005, 0x0006, 0x000E, 0x000F, 0x0010, |
| 0x0011, 0x0012, 0x0013, 0x0028, 0x0029, 0x002A, 0x002B, 0x002C, |
| 0x002D, 0x002E, 0x002F, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, |
| 0x0065, 0x0066, 0x0067, 0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, |
| 0x00D5, 0x00D6, 0x00D7, 0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, |
| 0x00DD, 0x00DE, 0x00DF, 0x01C0, 0x01C1, 0x01C2, 0x01C3, 0x01C4, |
| 0x01C5, 0x01C6, 0x01C7, 0x01C8, 0x01C9, 0x01CA, 0x01CB, 0x01CC, |
| 0x01CD, 0x01CE, 0x01CF, 0x01D0, 0x01D1, 0x01D2, 0x01D3, 0x01D4, |
| 0x01D5, 0x01D6, 0x01D7, 0x01D8, 0x01D9, 0x01DA, 0x01DB, 0x01DC, |
| 0x01DD, 0x01DE, 0x01DF, 0x03C0, 0x03C1, 0x03C2, 0x03C3, 0x03C4, |
| 0x03C5, 0x03C6, 0x03C7, 0x03C8, 0x03C9, 0x03CA, 0x03CB, 0x03CC, |
| 0x03CD, 0x03CE, 0x03CF, 0x03D0, 0x03D1, 0x03D2, 0x03D3, 0x03D4, |
| 0x03D5, 0x03D6, 0x03D7, 0x03D8, 0x03D9, 0x03DA, 0x03DB, 0x03DC, |
| 0x03DD, 0x03DE, 0x03DF, 0x07C0, 0x07C1, 0x07C2, 0x07C3, 0x07C4, |
| 0x07C5, 0x07C6, 0x07C7, 0x07C8, 0x07C9, 0x07CA, 0x07CB, 0x07CC, |
| 0x07CD, 0x07CE, 0x07CF, 0x0FA0, 0x0FA1, 0x0FA2, 0x0FA3, 0x0FA4, |
| 0x0FA5, 0x0FA6, 0x0FA7, 0x0FA8, 0x0FA9, 0x0FAA, 0x0FAB, 0x0FAC, |
| 0x0FAD, 0x0FAE, 0x0FAF, 0x1F60, 0x1F61, 0x1F62, 0x1F63, 0x1F64, |
| 0x1F65, 0x1F66, 0x1F67, 0x1F68, 0x1F69, 0x1F6A, 0x1F6B, 0x1F6C, |
| 0x1F6D, 0x1F6E, 0x1F6F, 0x1F70, 0x1F71, 0x1F72, 0x1F73, 0x1F74, |
| 0x1F75, 0x1F76, 0x1F77, 0x1F78, 0x1F79, 0x1F7A, 0x1F7B, 0x1F7C, |
| 0x1F7D, 0x1F7E, 0x1F7F, 0x1F80, 0x1F81, 0x1F82, 0x1F83, 0x1F84, |
| 0x1F85, 0x1F86, 0x1F87, 0x1F88, 0x1F89, 0x1F8A, 0x1F8B, 0x1F8C, |
| 0x1F8D, 0x1F8E, 0x1F8F, 0x1F90, 0x1F91, 0x1F92, 0x1F93, 0x1F94, |
| 0x1F95, 0x1F96, 0x1F97, 0x1F98, 0x1F99, 0x1F9A, 0x1F9B, 0x1F9C, |
| 0x1F9D, 0x1F9E, 0x1F9F, 0x1FA0, 0x1FA1, 0x1FA2, 0x1FA3, 0x1FA4, |
| 0x1FA5, 0x1FA6, 0x1FA7, 0x1FA8, 0x1FA9, 0x1FAA, 0x1FAB, 0x1FAC, |
| 0x1FAD, 0x1FAE, 0x1FAF, 0x1FB0, 0x1FB1, 0x1FB2, 0x1FB3, 0x1FB4, |
| 0x1FB5, 0x1FB6, 0x1FB7, 0x1FB8, 0x1FB9, 0x1FBA, 0x1FBB, 0x1FBC, |
| 0x1FBD, 0x1FBE, 0x1FBF, 0xFE00, 0xFE02, 0xFE03, 0xFE04, 0xFE05, |
| 0xFE06, 0xFE07, 0xFE08, 0xFE09, 0xFE0A, 0xFE0B, 0xFE0C, 0xFE0D, |
| 0xFE0E, 0xFE0F, 0xFE10, 0xFE11, 0xFE12, 0xFE13, 0xFE14, 0xFE15, |
| 0xFE16, 0xFE17, 0xFE18, 0xFE19, 0xFE1A, 0xFE1B, 0xFE1C, 0xFE1D, |
| 0xFE1E, 0xFE1F, 0xFE20, 0xFE21, 0xFE22, 0xFE23, 0xFE24, 0xFE25, |
| 0xFE26, 0xFE27, 0xFE28, 0xFE29, 0xFE2A, 0xFE2B, 0xFE2C, 0xFE2D, |
| 0xFE2E, 0xFE2F, 0xFE30, 0xFE31, 0xFE32, 0xFE33, 0xFE34, 0xFE35, |
| 0xFE36, 0xFE37, 0xFE38, 0xFE39, 0xFE3A, 0xFE3B, 0xFE3C, 0xFE3D, |
| 0xFE3E, 0xFE3F, 0xFE40, 0xFE41, 0xFE42, 0xFE43, 0xFE44, 0xFE45, |
| 0xFE46, 0xFE47, 0xFE48, 0xFE49, 0xFE4A, 0xFE4B, 0xFE4C, 0xFE4D, |
| 0xFE4E, 0xFE4F, 0xFE50, 0xFE51, 0xFE52, 0xFE53, 0xFE54, 0xFE55, |
| 0xFE56, 0xFE57, 0xFE58, 0xFE59, 0xFE5A, 0xFE5B, 0xFE5C, 0xFE5D, |
| 0xFE5E, 0xFE5F, 0xFE60, 0xFE61, 0xFE62, 0xFE63, 0xFE64, 0xFE65, |
| 0xFE66, 0xFE67, 0xFE68, 0xFE69, 0xFE6A, 0xFE6B, 0xFE6C, 0xFE6D, |
| 0xFE6E, 0xFE6F, 0xFE70, 0xFE71, 0xFE72, 0xFE73, 0xFE74, 0xFE75, |
| 0xFE76, 0xFE77, 0xFE78, 0xFE79, 0xFE7A, 0xFE7B, 0xFE7C, 0xFE7D, |
| 0xFE7E, 0xFE7F, 0xFE80, 0xFE81, 0xFE82, 0xFE83, 0xFE84, 0xFE85, |
| 0xFE86, 0xFE87, 0xFE88, 0xFE89, 0xFE8A, 0xFE8B, 0xFE8C, 0xFE8D, |
| 0xFE8E, 0xFE8F, 0xFE90, 0xFE91, 0xFE92, 0xFE93, 0xFE94, 0xFE95, |
| 0xFE96, 0xFE97, 0xFE98, 0xFE99, 0xFE9A, 0xFE9B, 0xFE9C, 0xFE9D, |
| 0xFE9E, 0xFE9F, 0xFEA0, 0xFEA1, 0xFEA2, 0xFEA3, 0xFEA4, 0xFEA5, |
| 0xFEA6, 0xFEA7, 0xFEA8, 0xFEA9, 0xFEAA, 0xFEAB, 0xFEAC, 0xFEAD, |
| 0xFEAE, 0xFEAF, 0xFEB0, 0xFEB1, 0xFEB2, 0xFEB3, 0xFEB4, 0xFEB5, |
| 0xFEB6, 0xFEB7, 0xFEB8, 0xFEB9, 0xFEBA, 0xFEBB, 0xFEBC, 0xFEBD, |
| 0xFEBE, 0xFEBF, 0xFEC0, 0xFEC1, 0xFEC2, 0xFEC3, 0xFEC4, 0xFEC5, |
| 0xFEC6, 0xFEC7, 0xFEC8, 0xFEC9, 0xFECA, 0xFECB, 0xFECC, 0xFECD, |
| 0xFECE, 0xFECF, 0xFED0, 0xFED1, 0xFED2, 0xFED3, 0xFED4, 0xFED5, |
| 0xFED6, 0xFED7, 0xFED8, 0xFED9, 0xFEDA, 0xFEDB, 0xFEDC, 0xFEDD, |
| 0xFEDE, 0xFEDF, 0xFEE0, 0xFEE1, 0xFEE2, 0xFEE3, 0xFEE4, 0xFEE5, |
| 0xFEE6, 0xFEE7, 0xFEE8, 0xFEE9, 0xFEEA, 0xFEEB, 0xFEEC, 0xFEED, |
| 0xFEEE, 0xFEEF, 0xFEF0, 0xFEF1, 0xFEF2, 0xFEF3, 0xFEF4, 0xFEF5, |
| 0xFEF6, 0xFEF7, 0xFEF8, 0xFEF9, 0xFEFA, 0xFEFB, 0xFEFC, 0xFEFD, |
| 0xFEFE, 0xFEFF, 0xFF00, 0xFF01, 0xFF02, 0xFF03, 0xFF04, 0xFF05, |
| 0xFF06, 0xFF07, 0xFF08, 0xFF09, 0xFF0A, 0xFF0B, 0xFF0C, 0xFF0D, |
| 0xFF0E, 0xFF0F, 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, 0xFF15, |
| 0xFF16, 0xFF17, 0xFF18, 0xFF19, 0xFF1A, 0xFF1B, 0xFF1C, 0xFF1D, |
| 0xFF1E, 0xFF1F, 0xFF20, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, |
| 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, |
| 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, |
| 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0xFF3B, 0xFF3C, 0xFF3D, |
| 0xFF3E, 0xFF3F, 0xFF40, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, |
| 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, |
| 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, |
| 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0xFF5B, 0xFF5C, 0xFF5D, |
| 0xFF5E, 0xFF5F, 0xFF60, 0xFF61, 0xFF62, 0xFF63, 0xFF64, 0xFF65, |
| 0xFF66, 0xFF67, 0xFF68, 0xFF69, 0xFF6A, 0xFF6B, 0xFF6C, 0xFF6D, |
| 0xFF6E, 0xFF6F, 0xFF70, 0xFF71, 0xFF72, 0xFF73, 0xFF74, 0xFF75, |
| 0xFF76, 0xFF77, 0xFF78, 0xFF79, 0xFF7A, 0xFF7B, 0xFF7C, 0xFF7D, |
| 0xFF7E, 0xFF7F, 0xFF80, 0xFF81, 0xFF82, 0xFF83, 0xFF84, 0xFF85, |
| 0xFF86, 0xFF87, 0xFF88, 0xFF89, 0xFF8A, 0xFF8B, 0xFF8C, 0xFF8D, |
| 0xFF8E, 0xFF8F, 0xFF90, 0xFF91, 0xFF92, 0xFF93, 0xFF94, 0xFF95, |
| 0xFF96, 0xFF97, 0xFF98, 0xFF99, 0xFF9A, 0xFF9B, 0xFF9C, 0xFF9D, |
| 0xFF9E, 0xFF9F, 0xFFA0, 0xFFA1, 0xFFA2, 0xFFA3, 0xFFA4, 0xFFA5, |
| 0xFFA6, 0xFFA7, 0xFFA8, 0xFFA9, 0xFFAA, 0xFFAB, 0xFFAC, 0xFFAD, |
| 0xFFAE, 0xFFAF, 0xFFB0, 0xFFB1, 0xFFB2, 0xFFB3, 0xFFB4, 0xFFB5, |
| 0xFFB6, 0xFFB7, 0xFFB8, 0xFFB9, 0xFFBA, 0xFFBB, 0xFFBC, 0xFFBD, |
| 0xFFBE, 0xFFBF, 0xFFC0, 0xFFC1, 0xFFC2, 0xFFC3, 0xFFC4, 0xFFC5, |
| 0xFFC6, 0xFFC7, 0xFFC8, 0xFFC9, 0xFFCA, 0xFFCB, 0xFFCC, 0xFFCD, |
| 0xFFCE, 0xFFCF, 0xFFD0, 0xFFD1, 0xFFD2, 0xFFD3, 0xFFD4, 0xFFD5, |
| 0xFFD6, 0xFFD7, 0xFFD8, 0xFFD9, 0xFFDA, 0xFFDB, 0xFFDC, 0xFFDD, |
| 0xFFDE, 0xFFDF, 0xFFE0, 0xFFE1, 0xFFE2, 0xFFE3, 0xFFE4, 0xFFE5, |
| 0xFFE6, 0xFFE7, 0xFFE8, 0xFFE9, 0xFFEA, 0xFFEB, 0xFFEC, 0xFFED, |
| 0xFFEE, 0xFFEF, 0xFFF0, 0xFFF1, 0xFFF2, 0xFFF3, 0xFFF4, 0xFFF5, |
| 0xFFF6, 0xFFF7, 0xFFF8, 0xFFF9, 0xFFFA, 0xFFFB, 0xFFFC, 0xFFFD, |
| 0xFFFE, 0xFFFF, |
| }; |
| |
| const uint8_t ff_hq_ac_skips[NUM_HQ_AC_ENTRIES] = { |
| 0, 0, 0, 0, 64, 1, 1, 0, 0, 0, 0, 2, 2, 1, 1, 0, |
| 0, 0, 0, 3, 3, 4, 4, 0, 0, 0, 0, 5, 5, 6, 6, 2, |
| 2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 7, 7, 8, 8, 9, |
| 9, 10, 10, 3, 3, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 11, 12, 12, 13, |
| 13, 14, 14, 5, 5, 6, 6, 3, 3, 4, 4, 2, 2, 2, 2, 1, |
| 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 3, 3, 3, |
| 3, 2, 2, 1, 1, 1, 1, 1, 1, 0, 1, 6, 6, 4, 4, 3, |
| 3, 1, 1, 1, 1, 1, 1, 2, 3, 4, 5, 7, 7, 8, 8, 9, |
| 9, 10, 10, 7, 7, 8, 8, 4, 4, 3, 3, 2, 2, 2, 2, 2, |
| 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 0, 1, 2, 3, 4, |
| 5, 6, 7, 8, 9, 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, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| }; |
| |
| const int16_t ff_hq_ac_syms[NUM_HQ_AC_ENTRIES] = { |
| 1, -1, 2, -2, 0, 1, -1, 3, |
| -3, 4, -4, 1, -1, 2, -2, 5, |
| -5, 6, -6, 1, -1, 1, -1, 7, |
| -7, 8, -8, 1, -1, 1, -1, 2, |
| -2, 3, -3, 4, -4, 9, -9, 10, |
| -10, 11, -11, 1, -1, 1, -1, 1, |
| -1, 1, -1, 2, -2, 2, -2, 3, |
| -3, 5, -5, 6, -6, 7, -7, 12, |
| -12, 13, -13, 14, -14, 15, -15, 16, |
| -16, 17, -17, 1, -1, 1, -1, 1, |
| -1, 1, -1, 2, -2, 2, -2, 3, |
| -3, 3, -3, 4, -4, 5, -5, 8, |
| -8, 18, -18, 19, -19, 20, -20, 21, |
| -21, 22, -22, 3, -3, 4, -4, 5, |
| -5, 6, -6, 9, -9, 10, -10, 11, |
| -11, 0, 0, 3, -3, 4, -4, 6, |
| -6, 12, -12, 13, -13, 14, -14, 0, |
| 0, 0, 0, 2, -2, 2, -2, 2, |
| -2, 2, -2, 3, -3, 3, -3, 5, |
| -5, 7, -7, 7, -7, 8, -8, 9, |
| -9, 10, -10, 11, -11, 15, -15, 16, |
| -16, 17, -17, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 0, 0, 0, 0, |
| 0, 0, 0, 0, 1, -1, 2, -2, |
| 3, -3, 4, -4, 5, -5, 6, -6, |
| 7, -7, 8, -8, 9, -9, 10, -10, |
| 11, -11, 12, -12, 13, -13, 14, -14, |
| 15, -15, 16, -16, 17, -17, 18, -18, |
| 19, -19, 20, -20, 21, -21, 22, -22, |
| 23, -23, 24, -24, 25, -25, 26, -26, |
| 27, -27, 28, -28, 29, -29, 30, -30, |
| 31, -31, 32, -32, 33, -33, 34, -34, |
| 35, -35, 36, -36, 37, -37, 38, -38, |
| 39, -39, 40, -40, 41, -41, 42, -42, |
| 43, -43, 44, -44, 45, -45, 46, -46, |
| 47, -47, 48, -48, 49, -49, 50, -50, |
| 51, -51, 52, -52, 53, -53, 54, -54, |
| 55, -55, 56, -56, 57, -57, 58, -58, |
| 59, -59, 60, -60, 61, -61, 62, -62, |
| 63, -63, 64, -64, 65, -65, 66, -66, |
| 67, -67, 68, -68, 69, -69, 70, -70, |
| 71, -71, 72, -72, 73, -73, 74, -74, |
| 75, -75, 76, -76, 77, -77, 78, -78, |
| 79, -79, 80, -80, 81, -81, 82, -82, |
| 83, -83, 84, -84, 85, -85, 86, -86, |
| 87, -87, 88, -88, 89, -89, 90, -90, |
| 91, -91, 92, -92, 93, -93, 94, -94, |
| 95, -95, 96, -96, 97, -97, 98, -98, |
| 99, -99, 100, -100, 101, -101, 102, -102, |
| 103, -103, 104, -104, 105, -105, 106, -106, |
| 107, -107, 108, -108, 109, -109, 110, -110, |
| 111, -111, 112, -112, 113, -113, 114, -114, |
| 115, -115, 116, -116, 117, -117, 118, -118, |
| 119, -119, 120, -120, 121, -121, 122, -122, |
| 123, -123, 124, -124, 125, -125, 126, -126, |
| 127, -127, 128, -128, 129, -129, 130, -130, |
| 131, -131, 132, -132, 133, -133, 134, -134, |
| 135, -135, 136, -136, 137, -137, 138, -138, |
| 139, -139, 140, -140, 141, -141, 142, -142, |
| 143, -143, 144, -144, 145, -145, 146, -146, |
| 147, -147, 148, -148, 149, -149, 150, -150, |
| 151, -151, 152, -152, 153, -153, 154, -154, |
| 155, -155, 156, -156, 157, -157, 158, -158, |
| 159, -159, 160, -160, 161, -161, 162, -162, |
| 163, -163, 164, -164, 165, -165, 166, -166, |
| 167, -167, 168, -168, 169, -169, 170, -170, |
| 171, -171, 172, -172, 173, -173, 174, -174, |
| 175, -175, 176, -176, 177, -177, 178, -178, |
| 179, -179, 180, -180, 181, -181, 182, -182, |
| 183, -183, 184, -184, 185, -185, 186, -186, |
| 187, -187, 188, -188, 189, -189, 190, -190, |
| 191, -191, 192, -192, 193, -193, 194, -194, |
| 195, -195, 196, -196, 197, -197, 198, -198, |
| 199, -199, 200, -200, 201, -201, 202, -202, |
| 203, -203, 204, -204, 205, -205, 206, -206, |
| 207, -207, 208, -208, 209, -209, 210, -210, |
| 211, -211, 212, -212, 213, -213, 214, -214, |
| 215, -215, 216, -216, 217, -217, 218, -218, |
| 219, -219, 220, -220, 221, -221, 222, -222, |
| 223, -223, 224, -224, 225, -225, 226, -226, |
| 227, -227, 228, -228, 229, -229, 230, -230, |
| 231, -231, 232, -232, 233, -233, 234, -234, |
| 235, -235, 236, -236, 237, -237, 238, -238, |
| 239, -239, 240, -240, 241, -241, 242, -242, |
| 243, -243, 244, -244, 245, -245, 246, -246, |
| 247, -247, 248, -248, 249, -249, 250, -250, |
| 251, -251, 252, -252, 253, -253, 254, -254, |
| 255, -255, |
| }; |
| |
| /* tables section - one per supported profile */ |
| static const uint8_t hq_tab_01[] = { |
| 0, 0, 12, 3, 20, 0, 28, 3, 40, 0, 0, 10, 15, 6, 20, |
| 10, 35, 6, 40, 10, 7, 13, 15, 16, 23, 13, 35, 16, 39, 13, |
| 7, 23, 10, 19, 23, 23, 27, 20, 39, 23, 2, 26, 10, 29, 22, |
| 26, 27, 24, 42, 26, 1, 0, 11, 3, 21, 0, 27, 3, 41, 0, |
| 1, 10, 16, 6, 21, 10, 35, 7, 41, 10, 6, 13, 16, 16, 22, |
| 13, 35, 17, 38, 13, 6, 23, 9, 19, 22, 23, 28, 20, 38, 23, |
| 3, 26, 9, 29, 23, 26, 28, 24, 43, 26, 2, 0, 10, 3, 22, |
| 0, 27, 4, 42, 0, 2, 10, 17, 6, 22, 10, 34, 7, 42, 10, |
| 5, 13, 17, 16, 21, 13, 34, 17, 37, 13, 5, 23, 9, 20, 21, |
| 23, 29, 20, 37, 23, 4, 26, 9, 24, 24, 26, 29, 24, 44, 26, |
| 3, 0, 9, 3, 23, 0, 28, 4, 43, 0, 3, 10, 17, 7, 23, |
| 10, 33, 7, 43, 10, 4, 13, 17, 17, 20, 13, 33, 17, 36, 13, |
| 4, 23, 10, 20, 20, 23, 30, 20, 36, 23, 5, 26, 10, 24, 25, |
| 26, 30, 24, 44, 27, 4, 0, 9, 4, 24, 0, 29, 4, 44, 0, |
| 4, 10, 16, 7, 24, 10, 32, 7, 44, 10, 3, 13, 16, 17, 19, |
| 13, 32, 17, 36, 14, 3, 23, 11, 20, 19, 23, 31, 20, 36, 18, |
| 6, 26, 11, 24, 26, 26, 31, 24, 43, 27, 5, 0, 10, 4, 25, |
| 0, 30, 4, 44, 1, 5, 10, 15, 7, 25, 10, 31, 7, 44, 11, |
| 2, 13, 15, 17, 18, 13, 31, 17, 37, 14, 2, 23, 12, 20, 18, |
| 23, 32, 20, 37, 18, 7, 26, 12, 24, 26, 27, 32, 24, 42, 27, |
| 6, 0, 11, 4, 26, 0, 31, 4, 43, 1, 6, 10, 14, 7, 26, |
| 10, 30, 7, 43, 11, 1, 13, 14, 17, 18, 14, 30, 17, 38, 14, |
| 1, 23, 13, 20, 18, 18, 33, 20, 38, 18, 8, 26, 13, 24, 25, |
| 27, 33, 24, 41, 27, 7, 0, 12, 4, 26, 1, 32, 4, 42, 1, |
| 7, 10, 13, 7, 26, 11, 29, 7, 42, 11, 0, 13, 13, 17, 19, |
| 14, 29, 17, 39, 14, 0, 23, 14, 20, 19, 18, 34, 20, 39, 18, |
| 8, 27, 14, 24, 24, 27, 34, 24, 40, 27, 8, 0, 13, 4, 25, |
| 1, 33, 4, 41, 1, 8, 10, 12, 7, 25, 11, 28, 7, 41, 11, |
| 0, 14, 12, 17, 20, 14, 28, 17, 40, 14, 0, 18, 15, 20, 20, |
| 18, 35, 20, 40, 18, 7, 27, 15, 24, 23, 27, 35, 24, 39, 27, |
| 8, 1, 14, 4, 24, 1, 34, 4, 40, 1, 8, 11, 11, 7, 24, |
| 11, 27, 7, 40, 11, 1, 14, 11, 17, 21, 14, 27, 17, 41, 14, |
| 1, 18, 16, 20, 21, 18, 35, 21, 41, 18, 6, 27, 16, 24, 22, |
| 27, 35, 25, 38, 27, 7, 1, 15, 4, 23, 1, 35, 4, 39, 1, |
|