29 { 541, 956, 768}, { 877, 581, 568}, { 675,1574, 635}, {1248,1464, 668},
30 {1246, 839, 1394}, {2560,1386, 991}, { 925, 687, 608}, {2208, 797, 1144},
31 { 535, 832, 799}, { 762, 605, 1154}, { 832,1122, 1003}, {1180, 687, 1176},
32 {1292, 901, 732}, {1656, 689, 896}, {1750,1248, 848}, {2284, 942, 1022},
33 { 824,1472, 643}, { 517, 765, 512}, { 562,1816, 1522}, { 694,1826, 2700},
34 { 704, 524, 672}, {1442, 757, 2232}, { 884, 551, 1266}, {2232,1007, 1692},
35 { 932, 746, 777}, {1132, 822, 926}, {1226, 771, 611}, {2948,1342, 1008},
36 {1302, 594, 1158}, {1602, 636, 1128}, {3408, 910, 1438}, {1996, 614, 575},
37 { 665, 935, 628}, { 631,1192, 829}, { 644, 926, 1052}, { 879, 988, 1226},
38 { 941,2768, 2772}, { 565,1344, 2304}, { 547, 628, 740}, { 639, 532, 1074},
39 { 955,1208, 598}, {1124,1160, 900}, {1206, 899, 1242}, { 746, 533, 624},
40 {1458,1028, 735}, {1706,1102, 692}, {1898,1018, 1004}, {2176, 988, 735},
41 {1578, 782, 1642}, { 897, 516, 754}, {2068, 702, 1656}, {2344, 818, 1526},
42 { 907, 652, 592}, {1056, 652, 642}, {2124,1416, 780}, {2664,1250, 727},
43 {1894, 727, 1108}, {2196, 657, 981}, {4840, 920, 1704}, {4992,1238, 983},
44 {2420, 909, 1094}, {2760, 935, 1032}, {2800, 612, 853}, {3068, 832, 574},
45 { 523,1796, 923}, { 722,1916, 1382}, {1226,1542, 928}, { 758, 757, 584},
46 { 512,1134, 577}, { 615,1276, 698}, { 574,2568, 2356}, { 993,2728, 3512},
47 { 539, 890, 913}, { 694, 928, 1088}, { 805, 600, 1360}, {2160, 951, 3128},
48 { 816, 950, 590}, { 955, 847, 811}, {1094, 883, 556}, {1304, 888, 604},
49 { 863,1170, 855}, {1023, 997, 1032}, { 932,1228, 1280}, { 627, 564, 573},
50 { 876, 900, 1448}, {1030, 857, 1792}, {1294, 953, 1758}, {1612, 854, 1714},
51 {1090,1166, 631}, {1314,1202, 751}, {1480, 905, 795}, {1682,1016, 568},
52 {1494,1178, 983}, { 878, 613, 526}, {1728,1446, 779}, {2136,1348, 774},
53 { 950, 649, 939}, {1180, 703, 899}, {1236, 527, 1158}, {1450, 647, 972},
54 {1282, 647, 707}, {1460, 663, 644}, {1614, 572, 578}, {3516,1222, 821},
55 {2668, 729, 1682}, {3128, 585, 1502}, {3208, 733, 976}, {6800, 871, 1416},
56 {3480, 743, 1408}, {3764, 899, 1170}, {3772, 632, 875}, {4092, 732, 638},
57 {3112, 753, 2620}, {3372, 945, 1890}, {3768, 969, 2288}, {2016, 559, 854},
58 {1736, 729, 787}, {1940, 686, 547}, {2140, 635, 674}, {4480,1272, 828},
59 {3976, 592, 1666}, {4384, 621, 1388}, {4400, 801, 955}, {4656, 522, 646},
60 {4848, 625, 1636}, {4984, 591, 874}, {5352, 535, 1001}, {11216,938, 1184},
61 { 925,3280, 1476}, { 735,1580, 1088}, {1150,1576, 674}, { 655, 783, 528},
62 { 527,2052, 1354}, { 782,1704, 1880}, { 578, 910, 1026}, { 692, 882, 1468},
63 { 586, 683, 715}, { 739, 609, 717}, { 778, 773, 697}, { 922, 785, 813},
64 { 766, 651, 984}, { 978, 596, 1030}, {1070, 757, 1080}, {1324, 687, 1178},
65 {1108,2144, 979}, { 723, 982, 690}, { 936, 956, 527}, {1180,1002, 547},
66 { 517,1306, 825}, { 832,1184, 974}, {1024, 957, 903}, {1262,1090, 906},
67 {1028, 720, 649}, {1192, 679, 694}, {2468,1480, 979}, {2844,1370, 877},
68 {1310, 835, 848}, {1508, 839, 698}, {1742,1030, 769}, {1910, 852, 573},
69 {1280, 859, 1174}, {1584, 863, 1108}, {1686, 708, 1364}, {1942, 768, 1104},
70 { 891, 536, 690}, {1016, 560, 663}, {2172, 870, 1348}, {2404, 999, 1170},
71 {1890, 966, 889}, {2116, 912, 777}, {2296,1020, 714}, {4872,1844, 932},
72 {2392, 778, 929}, {2604, 772, 744}, {2764, 957, 722}, {5832,1532, 984},
73 {2188, 519, 1264}, {2332, 532, 922}, {5064, 995, 2412}, {2708, 571, 874},
74 {2408, 545, 666}, {5016,1084, 875}, {5376, 983, 1196}, {5536, 979, 730},
75 {5344, 634, 1744}, {5688, 706, 1348}, {5912, 977, 1190}, {6072, 905, 763},
76 {6048, 582, 1526}, {11968,1013,1816}, {12864,937, 1900}, {12560,1086, 998},
77 {1998, 684, 1884}, {2504, 633, 1992}, {1252, 567, 835}, {1478, 571, 973},
78 {2620, 769, 1414}, {2808, 952, 1142}, {2908, 712, 1028}, {2976, 686, 741},
79 {1462, 552, 714}, {3296, 991, 1452}, {1590, 615, 544}, {3480,1150, 824},
80 {3212, 832, 923}, {3276, 839, 531}, {3548, 786, 852}, {3732, 764, 570},
81 {5728, 906, 2616}, {6272, 804, 2252}, {3096, 535, 876}, {3228, 598, 649},
82 {6536, 759, 1436}, {6648, 993, 846}, {6864, 567, 1210},{14016,1012, 1302},
83 {3408, 548, 1098}, {7160,1008, 1742}, {7136,1000, 1182}, {7480,1032, 836},
84 {7448, 612, 1552}, {7744, 614, 816}, {8384, 777, 1438}, {8784, 694, 786},
85 { 882,1508, 1068}, { 597, 837, 766}, {1270, 954, 1408}, { 803, 550, 798},
86 {1398,1308, 798}, {1848,1534, 738}, { 970, 675, 608}, {1264, 706, 684},
87 {1716, 767, 1126}, {2108, 765, 1404}, {2236, 924, 1003}, {2472,1048, 611},
88 { 999, 942, 963}, {1094, 857, 935}, {2936, 926, 1138}, {1934, 746, 551},
89 {3336, 633, 1762}, {3764, 701, 1454}, {1890, 564, 636}, {4096,1126, 793},
90 {3936, 556, 1140}, {3936, 540, 740}, {4216, 764, 874}, {8480,1328, 1014},
91 {2184, 515, 1042}, {4432, 934, 1344}, {4784, 945, 1112}, {5016,1062, 733},
92 {9216,1020, 2028}, {9968, 924, 1188}, {5424, 909, 1206}, {6512, 744, 1086}
96 15, 15, 15, 15, 15, 16, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14,
97 14, 13, 14, 14, 13, 14, 13, 14, 13, 13, 13, 14, 13, 13, 14, 13,
98 13, 13, 13, 13, 14, 13, 12, 12, 13, 13, 13, 12, 13, 13, 13, 13,
99 13, 12, 13, 13, 12, 12, 13, 13, 13, 13, 14, 14, 13, 13, 13, 13,
100 13, 13, 13, 12, 12, 12, 13, 13, 12, 12, 12, 13, 12, 12, 12, 12,
101 12, 12, 12, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 12, 12,
102 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 14, 13, 13, 13, 13,
103 13, 13, 13, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 14,
104 13, 12, 12, 11, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
105 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 11, 11, 11, 11,
106 12, 12, 12, 12, 11, 11, 12, 12, 12, 12, 12, 13, 12, 12, 12, 13,
107 12, 12, 13, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14,
108 12, 12, 11, 11, 12, 12, 12, 12, 11, 12, 11, 12, 12, 12, 12, 12,
109 13, 13, 12, 12, 13, 13, 13, 14, 12, 13, 13, 13, 13, 13, 13, 13,
110 11, 10, 11, 10, 11, 11, 10, 10, 11, 11, 11, 11, 10, 9, 11, 10,
111 12, 12, 11, 12, 12, 12, 12, 13, 11, 12, 12, 12, 13, 13, 12, 12
116 38, -4, 15, -4, 14, -13, 12, -11, -2, -6,
117 -6, -11, -45, -16, -11, -13, -7, 6, -12, 4,
118 -20, 3, -16, 12, -1, 12, 46, 24, 0, 33,
119 -3, 9, -12, -12, -8, -7, 17, -6, 0, -2,
121 60, -16, 3, -22, 10, -32, 0, -28, -17, -18,
122 -3, -25, -37, -23, -10, 3, 2, 3, 0, 3,
123 -14, 0, -14, -1, 0, 2, 32, 9, -1, 25,
124 7, 13, -5, 13, 8, 1, 2, 8, -10, 6,
126 27, -12, 28, -2, 6, -7, 15, 9, -11, 1,
127 -13, -11, -40, 4, -29, -14, -19, -5, -23, -8,
128 -30, -13, -17, 0, -14, 12, 34, 20, -2, 25,
129 2, -16, -4, -12, 15, 16, 29, 7, 24, 10,
131 49, -24, 16, -20, 2, -26, 2, -7, -25, -10,
132 -11, -25, -32, -3, -27, 2, -8, -8, -11, -9,
133 -24, -17, -16, -14, -13, 2, 20, 5, -4, 17,
134 14, -12, 3, 13, 33, 25, 14, 23, 15, 19,
136 46, -6, 21, 8, -2, -16, -5, -8, -11, 4,
137 8, 15, -24, 4, -2, -26, -3, -16, -16, -14,
138 -9, -2, -1, 4, 19, 7, 36, 17, 9, 13,
139 0, 31, -5, -12, 7, -8, 11, -15, -13, -4,
141 68, -18, 9, -9, -6, -35, -18, -25, -26, -7,
142 10, 1, -16, -3, -1, -9, 6, -19, -4, -15,
143 -4, -6, 0, -8, 20, -2, 23, 2, 7, 5,
144 12, 35, 1, 13, 24, 0, -3, 0, -22, 4,
146 35, -14, 34, 10, -10, -10, -1, 12, -20, 12,
147 0, 15, -18, 24, -20, -27, -14, -28, -27, -27,
148 -20, -19, -2, -8, 5, 7, 25, 13, 5, 5,
149 6, 5, 2, -12, 31, 15, 23, -1, 12, 8,
151 57, -26, 22, -7, -14, -28, -14, -3, -35, 0,
152 3, 1, -11, 16, -18, -10, -4, -31, -15, -28,
153 -14, -23, -1, -21, 7, -2, 11, -1, 3, -1,
154 18, 9, 10, 13, 49, 24, 8, 14, 2, 16,
156 25, 15, 22, 11, 18, 4, 15, -22, 8, -2,
157 -17, -9, -48, -20, -30, -17, -16, 11, -1, 16,
158 2, 10, -5, 26, -2, -4, 22, 0, 2, 10,
159 -6, 13, -14, 10, -23, 0, 10, -2, 1, 0,
161 47, 3, 11, -6, 15, -13, 2, -38, -6, -13,
162 -15, -22, -40, -28, -28, 0, -5, 8, 10, 15,
163 7, 7, -4, 13, -1, -14, 9, -14, 0, 2,
164 4, 18, -7, 36, -6, 8, -3, 13, -7, 8,
166 14, 7, 36, 13, 10, 10, 18, 0, 0, 5,
167 -25, -8, -43, 0, -48, -18, -27, 0, -12, 3,
168 -7, -6, -7, 13, -15, -5, 11, -3, 0, 2,
169 0, -12, -6, 10, 0, 23, 22, 11, 26, 12,
171 36, -5, 24, -4, 7, -7, 6, -17, -14, -5,
172 -22, -22, -35, -8, -46, -1, -17, -3, 0, 2,
173 -2, -10, -5, 0, -14, -15, -2, -18, -2, -4,
174 11, -7, 1, 36, 18, 32, 7, 27, 17, 20,
176 33, 13, 29, 24, 1, 1, -2, -18, 0, 9,
177 -3, 17, -27, 0, -21, -30, -12, -11, -5, -2,
178 12, 4, 9, 19, 18, -9, 13, -6, 11, -8,
179 -2, 35, -8, 10, -7, -1, 4, -11, -10, -2,
181 55, 1, 17, 6, -1, -16, -15, -35, -15, -2,
182 0, 4, -19, -8, -20, -13, -1, -14, 7, -3,
183 18, 0, 10, 5, 19, -19, 0, -21, 8, -16,
184 9, 39, 0, 36, 10, 7, -9, 4, -20, 5,
186 22, 5, 42, 26, -6, 8, 1, 2, -9, 17,
187 -10, 18, -21, 19, -39, -31, -23, -23, -16, -15,
188 2, -12, 7, 6, 5, -9, 1, -10, 7, -16,
189 4, 9, 0, 10, 17, 22, 16, 2, 14, 9,
191 44, -6, 30, 8, -9, -10, -11, -14, -23, 5,
192 -8, 4, -14, 12, -37, -14, -12, -26, -4, -16,
193 8, -16, 9, -7, 6, -19, -12, -25, 5, -24,
194 15, 13, 8, 36, 34, 31, 1, 18, 4, 18,
196 -3, -5, -9, -7, 15, -1, 5, 13, 2, 12,
197 5, 2, -21, -23, -2, -16, 0, 5, -6, 13,
198 -23, 3, -32, 10, -15, 8, 44, 28, 9, 37,
199 -2, 13, -9, -15, -12, -27, -7, -12, 0, -11,
201 18, -17, -21, -25, 11, -19, -6, -3, -11, 0,
202 7, -11, -13, -31, -1, 0, 9, 1, 5, 12,
203 -18, 0, -31, -2, -13, -1, 30, 14, 7, 29,
204 9, 18, -1, 10, 4, -18, -22, 3, -10, -2,
206 -13, -13, 3, -5, 7, 4, 9, 34, -5, 20,
207 -2, 3, -16, -3, -20, -17, -11, -7, -17, 0,
208 -34, -13, -33, -2, -28, 8, 32, 24, 5, 29,
209 3, -12, 0, -15, 11, -3, 3, 2, 24, 1,
211 8, -25, -8, -23, 3, -13, -3, 17, -20, 8,
212 0, -10, -8, -11, -18, 0, -1, -10, -5, 0,
213 -28, -17, -32, -15, -26, -1, 19, 9, 3, 21,
214 15, -7, 6, 9, 29, 5, -10, 17, 15, 9,
216 4, -6, -3, 5, -1, -4, -11, 16, -6, 23,
217 19, 29, 0, -3, 6, -30, 3, -17, -10, -5,
218 -13, -2, -17, 3, 5, 3, 35, 21, 17, 17,
219 2, 35, -2, -15, 3, -28, -13, -21, -13, -13,
221 26, -19, -15, -12, -5, -22, -24, 0, -21, 12,
222 21, 15, 8, -11, 7, -12, 14, -20, 2, -6,
223 -7, -6, -16, -9, 6, -5, 21, 7, 15, 10,
224 13, 39, 5, 10, 20, -19, -28, -5, -22, -5,
226 -5, -15, 9, 7, -9, 2, -8, 37, -14, 31,
227 11, 29, 5, 16, -11, -30, -7, -29, -21, -18,
228 -23, -19, -18, -9, -7, 3, 23, 17, 14, 9,
229 8, 9, 6, -15, 27, -4, -2, -6, 12, -1,
231 16, -27, -2, -10, -13, -16, -20, 20, -29, 20,
232 14, 16, 13, 8, -9, -13, 2, -33, -9, -19,
233 -17, -23, -17, -22, -6, -6, 9, 2, 12, 2,
234 20, 13, 13, 10, 45, 4, -16, 8, 2, 7,
236 -16, 14, -2, 8, 20, 17, 9, 2, 14, 16,
237 -6, 5, -24, -28, -21, -20, -8, 9, 4, 25,
238 -1, 11, -22, 24, -15, -8, 21, 5, 11, 14,
239 -5, 18, -11, 7, -27, -20, -14, -7, 1, -9,
241 6, 2, -14, -9, 16, -1, -3, -14, 0, 5,
242 -3, -8, -16, -36, -19, -3, 1, 6, 17, 24,
243 4, 7, -21, 11, -14, -18, 7, -9, 9, 7,
244 6, 22, -3, 33, -10, -11, -28, 7, -7, 0,
246 -26, 6, 11, 10, 12, 23, 12, 23, 5, 24,
247 -13, 5, -19, -8, -38, -21, -20, -2, -6, 12,
248 -11, -5, -23, 11, -29, -9, 9, 0, 7, 6,
249 1, -7, -2, 7, -3, 3, -2, 6, 27, 3,
251 -4, -6, 0, -7, 8, 4, 0, 6, -9, 13,
252 -11, -7, -11, -15, -37, -4, -9, -5, 5, 11,
253 -5, -9, -22, -1, -27, -18, -4, -14, 5, 0,
254 12, -3, 4, 32, 14, 12, -17, 22, 17, 11,
256 -8, 12, 3, 21, 3, 14, -8, 5, 4, 28,
257 7, 32, -2, -8, -12, -34, -4, -12, 1, 6,
258 9, 4, -7, 17, 4, -13, 11, -1, 19, -4,
259 0, 39, -4, 7, -11, -21, -20, -16, -10, -11,
261 13, 0, -8, 3, 0, -4, -21, -11, -9, 16,
262 10, 18, 5, -16, -10, -16, 5, -15, 13, 5,
263 15, 1, -6, 4, 6, -23, -2, -16, 17, -12,
264 10, 44, 3, 33, 6, -12, -34, -1, -20, -3,
266 -18, 4, 17, 23, -4, 20, -4, 26, -3, 36,
267 0, 32, 2, 12, -29, -34, -16, -24, -10, -6,
268 0, -12, -8, 4, -8, -13, 0, -6, 16, -12,
269 5, 13, 3, 7, 13, 3, -8, -2, 14, 0,
271 3, -7, 5, 5, -8, 2, -17, 9, -18, 24,
272 2, 19, 10, 4, -28, -17, -5, -28, 2, -7,
273 4, -15, -7, -8, -6, -23, -13, -21, 14, -20,
274 17, 18, 11, 33, 30, 11, -23, 13, 5, 9,
276 60, 10, 7, -1, 9, -8, 6, -13, 2, -15,
277 -1, -10, -13, -11, 15, 0, 6, 9, -1, 0,
278 -13, 1, -11, -3, -13, 21, 13, 26, -7, 31,
279 -10, -7, -16, -33, -31, -10, 22, -8, 1, -2,
281 82, -1, -4, -19, 6, -27, -6, -29, -12, -26,
282 1, -24, -5, -18, 17, 17, 17, 6, 10, 0,
283 -7, -2, -9, -16, -12, 11, 0, 11, -9, 23,
284 0, -3, -8, -8, -13, -1, 8, 7, -7, 6,
286 49, 2, 21, 0, 1, -2, 9, 8, -6, -6,
287 -8, -10, -8, 9, -2, 0, -4, -2, -13, -12,
288 -23, -15, -12, -16, -26, 21, 2, 21, -11, 23,
289 -4, -33, -7, -33, -6, 13, 34, 5, 27, 10,
291 71, -10, 9, -17, -1, -20, -3, -8, -21, -18,
292 -6, -24, 0, 1, 0, 16, 6, -5, 0, -13,
293 -17, -19, -11, -29, -25, 11, -11, 6, -13, 15,
294 7, -29, 0, -8, 11, 22, 20, 21, 17, 18,
296 67, 8, 14, 11, -7, -11, -11, -9, -7, -3,
297 13, 16, 8, 9, 24, -12, 10, -13, -5, -17,
298 -2, -4, 3, -10, 6, 17, 4, 19, 0, 11,
299 -6, 13, -9, -33, -14, -10, 16, -17, -10, -4,
301 90, -3, 2, -6, -10, -29, -24, -26, -21, -15,
302 15, 2, 16, 1, 25, 4, 21, -16, 6, -18,
303 3, -8, 5, -24, 8, 7, -9, 4, -1, 3,
304 5, 18, -1, -7, 2, -1, 2, -1, -19, 3,
306 57, 0, 27, 13, -14, -5, -7, 11, -15, 4,
307 5, 16, 13, 29, 6, -13, 0, -25, -16, -31,
308 -12, -22, 2, -23, -6, 16, -7, 14, -2, 3,
309 0, -12, 0, -33, 9, 13, 28, -3, 14, 7,
311 79, -11, 15, -4, -18, -23, -20, -5, -30, -7,
312 7, 2, 21, 21, 8, 3, 10, -28, -4, -31,
313 -6, -25, 3, -37, -4, 7, -20, 0, -4, -4,
314 11, -7, 6, -8, 27, 22, 14, 12, 5, 16,
316 47, 30, 15, 14, 14, 9, 9, -23, 13, -10,
317 -12, -7, -16, -15, -3, -3, -1, 14, 9, 12,
318 9, 8, 0, 10, -14, 4, -9, 2, -5, 8,
319 -13, -3, -18, -10, -45, -3, 16, -4, 4, 0,
321 69, 17, 3, -3, 10, -8, -3, -40, -1, -21,
322 -10, -21, -8, -23, -1, 13, 8, 11, 21, 11,
323 15, 4, 0, -2, -13, -5, -23, -12, -7, 0,
324 -1, 0, -10, 14, -28, 5, 1, 11, -5, 7,
326 36, 21, 28, 16, 6, 16, 12, -2, 4, -2,
327 -20, -7, -11, 4, -20, -4, -12, 2, -1, 0,
328 0, -8, -2, -2, -27, 4, -21, -2, -9, 0,
329 -6, -29, -9, -10, -21, 21, 28, 10, 29, 11,
331 58, 9, 16, -1, 2, -2, 0, -19, -10, -13,
332 -17, -21, -3, -3, -19, 12, -2, 0, 10, -1,
333 5, -12, 0, -15, -26, -5, -34, -16, -11, -7,
334 4, -25, -2, 14, -3, 29, 13, 25, 20, 20,
336 55, 28, 21, 27, -2, 7, -8, -20, 4, 1,
337 1, 18, 5, 4, 5, -16, 2, -8, 5, -5,
338 19, 2, 14, 3, 6, 0, -18, -4, 2, -11,
339 -8, 18, -11, -10, -29, -3, 10, -13, -8, -3,
341 77, 16, 9, 9, -6, -11, -21, -37, -10, -10,
342 4, 5, 13, -3, 7, 0, 13, -11, 17, -6,
343 25, -1, 15, -9, 7, -9, -32, -19, 0, -18,
344 2, 22, -3, 15, -12, 5, -4, 2, -17, 5,
346 44, 20, 34, 29, -10, 13, -4, 0, -4, 9,
347 -5, 19, 10, 24, -11, -17, -8, -20, -5, -19,
348 9, -14, 12, -9, -6, 0, -30, -9, 0, -19,
349 -2, -7, -2, -10, -5, 20, 21, 1, 17, 9,
351 66, 8, 23, 11, -14, -5, -17, -16, -19, -2,
352 -3, 5, 18, 17, -10, 0, 1, -23, 6, -20,
353 15, -18, 14, -22, -5, -10, -44, -23, -2, -26,
354 9, -3, 4, 14, 12, 29, 7, 16, 7, 18,
356 18, 9, -17, -4, 11, 3, 0, 11, 7, 4,
357 10, 3, 10, -18, 24, -3, 14, 7, 4, 10,
358 -16, 1, -27, -4, -27, 17, 12, 30, 0, 35,
359 -9, -3, -12, -36, -35, -30, -2, -13, 2, -11,
361 40, -2, -29, -22, 7, -14, -12, -5, -7, -7,
362 12, -9, 18, -26, 26, 14, 24, 4, 16, 9,
363 -10, -2, -26, -18, -26, 7, -1, 15, -1, 27,
364 2, 0, -4, -11, -17, -21, -16, 1, -7, -3,
366 8, 1, -3, -2, 3, 10, 3, 32, -1, 12,
367 2, 4, 15, 1, 7, -3, 2, -4, -6, -3,
368 -26, -15, -29, -17, -40, 17, 0, 26, -2, 27,
369 -2, -29, -4, -36, -10, -6, 9, 0, 27, 0,
371 30, -11, -15, -20, 0, -8, -9, 15, -15, 0,
372 5, -9, 23, -6, 8, 13, 13, -7, 5, -3,
373 -20, -19, -27, -31, -39, 7, -13, 11, -4, 19,
374 8, -25, 3, -11, 7, 2, -4, 16, 18, 9,
376 26, 7, -11, 8, -5, 1, -17, 14, -1, 15,
377 24, 30, 32, 1, 33, -16, 18, -14, 0, -8,
378 -6, -4, -12, -12, -6, 13, 2, 23, 8, 15,
379 -4, 17, -5, -36, -18, -30, -8, -22, -10, -14,
381 48, -4, -23, -9, -9, -17, -30, -2, -16, 3,
382 26, 16, 40, -6, 35, 1, 28, -17, 12, -9,
383 0, -8, -11, -25, -5, 3, -10, 8, 6, 7,
384 6, 22, 1, -11, -1, -21, -22, -7, -19, -5,
386 15, 0, 2, 10, -13, 7, -14, 35, -10, 23,
387 16, 31, 37, 21, 16, -17, 6, -26, -10, -21,
388 -16, -21, -13, -25, -19, 13, -8, 19, 5, 7,
389 1, -8, 2, -36, 5, -6, 3, -8, 15, -1,
391 37, -12, -9, -7, -17, -11, -26, 18, -25, 12,
392 19, 17, 45, 14, 17, 0, 17, -30, 1, -22,
393 -10, -25, -12, -38, -18, 3, -22, 4, 3, 0,
394 13, -3, 10, -11, 23, 2, -10, 7, 5, 7,
396 5, 29, -9, 11, 15, 22, 3, 0, 18, 8,
397 -1, 6, 7, -23, 6, -6, 5, 12, 15, 21,
398 5, 8, -17, 9, -28, 0, -11, 6, 2, 12,
399 -11, 0, -14, -13, -49, -22, -8, -9, 4, -9,
401 27, 16, -21, -6, 12, 3, -9, -16, 3, -2,
402 1, -7, 15, -31, 7, 10, 16, 9, 27, 21,
403 11, 5, -16, -3, -26, -9, -24, -7, 0, 4,
404 0, 4, -6, 11, -32, -14, -23, 6, -5, -1,
406 -4, 20, 3, 13, 8, 28, 6, 21, 10, 16,
407 -8, 7, 12, -3, -11, -7, -5, 0, 4, 8,
408 -4, -8, -18, -3, -41, 0, -22, 2, 0, 4,
409 -5, -25, -6, -14, -25, 1, 2, 4, 29, 2,
411 17, 8, -8, -4, 4, 10, -6, 5, -4, 5,
412 -6, -6, 20, -10, -9, 9, 4, -2, 16, 7,
413 1, -12, -17, -16, -39, -9, -36, -12, -2, -3,
414 6, -21, 1, 11, -7, 10, -11, 20, 20, 11,
416 13, 27, -3, 24, -1, 19, -14, 3, 9, 20,
417 12, 33, 29, -3, 15, -20, 9, -9, 11, 3,
418 16, 2, -2, 2, -7, -3, -20, 0, 10, -7,
419 -7, 22, -7, -13, -33, -23, -14, -18, -7, -12,
421 35, 15, -15, 6, -4, 1, -27, -12, -5, 8,
422 15, 19, 37, -11, 16, -2, 20, -12, 23, 2,
423 22, -1, -1, -11, -5, -13, -34, -14, 8, -14,
424 4, 26, 0, 11, -16, -14, -29, -2, -17, -3,
426 3, 19, 9, 26, -8, 26, -10, 24, 0, 28,
427 5, 33, 34, 17, -2, -20, -1, -22, 0, -10,
428 6, -14, -3, -10, -20, -4, -32, -4, 7, -15,
429 0, -3, 0, -13, -9, 0, -3, -4, 17, 0,
431 25, 7, -2, 8, -12, 7, -23, 8, -13, 16,
432 7, 20, 42, 9, 0, -3, 9, -25, 12, -10,
433 12, -18, -2, -24, -19, -13, -46, -19, 5, -22,
434 10, 0, 8, 11, 8, 9, -17, 11, 7, 8,
436 -25, -7, 2, -8, 12, -7, 23, -8, 13, -16,
437 -7, -20, -42, -9, 0, 3, -9, 25, -12, 10,
438 -12, 18, 2, 24, 19, 13, 46, 19, -5, 22,
439 -10, 0, -8, -11, -8, -9, 17, -11, -7, -8,
441 -3, -19, -9, -26, 8, -26, 10, -24, 0, -28,
442 -5, -33, -34, -17, 2, 20, 1, 22, 0, 10,
443 -6, 14, 3, 10, 20, 4, 32, 4, -7, 15,
444 0, 3, 0, 13, 9, 0, 3, 4, -17, 0,
446 -35, -15, 15, -6, 4, -1, 27, 12, 5, -8,
447 -15, -19, -37, 11, -16, 2, -20, 12, -23, -2,
448 -22, 1, 1, 11, 5, 13, 34, 14, -8, 14,
449 -4, -26, 0, -11, 16, 14, 29, 2, 17, 3,
451 -13, -27, 3, -24, 1, -19, 14, -3, -9, -20,
452 -12, -33, -29, 3, -15, 20, -9, 9, -11, -3,
453 -16, -2, 2, -2, 7, 3, 20, 0, -10, 7,
454 7, -22, 7, 13, 33, 23, 14, 18, 7, 12,
456 -17, -8, 8, 4, -4, -10, 6, -5, 4, -5,
457 6, 6, -20, 10, 9, -9, -4, 2, -16, -7,
458 -1, 12, 17, 16, 39, 9, 36, 12, 2, 3,
459 -6, 21, -1, -11, 7, -10, 11, -20, -20, -11,
461 4, -20, -3, -13, -8, -28, -6, -21, -10, -16,
462 8, -7, -12, 3, 11, 7, 5, 0, -4, -8,
463 4, 8, 18, 3, 41, 0, 22, -2, 0, -4,
464 5, 25, 6, 14, 25, -1, -2, -4, -29, -2,
466 -27, -16, 21, 6, -12, -3, 9, 16, -3, 2,
467 -1, 7, -15, 31, -7, -10, -16, -9, -27, -21,
468 -11, -5, 16, 3, 26, 9, 24, 7, 0, -4,
469 0, -4, 6, -11, 32, 14, 23, -6, 5, 1,
471 -5, -29, 9, -11, -15, -22, -3, 0, -18, -8,
472 1, -6, -7, 23, -6, 6, -5, -12, -15, -21,
473 -5, -8, 17, -9, 28, 0, 11, -6, -2, -12,
474 11, 0, 14, 13, 49, 22, 8, 9, -4, 9,
476 -37, 12, 9, 7, 17, 11, 26, -18, 25, -12,
477 -19, -17, -45, -14, -17, 0, -17, 30, -1, 22,
478 10, 25, 12, 38, 18, -3, 22, -4, -3, 0,
479 -13, 3, -10, 11, -23, -2, 10, -7, -5, -7,
481 -15, 0, -2, -10, 13, -7, 14, -35, 10, -23,
482 -16, -31, -37, -21, -16, 17, -6, 26, 10, 21,
483 16, 21, 13, 25, 19, -13, 8, -19, -5, -7,
484 -1, 8, -2, 36, -5, 6, -3, 8, -15, 1,
486 -48, 4, 23, 9, 9, 17, 30, 2, 16, -3,
487 -26, -16, -40, 6, -35, -1, -28, 17, -12, 9,
488 0, 8, 11, 25, 5, -3, 10, -8, -6, -7,
489 -6, -22, -1, 11, 1, 21, 22, 7, 19, 5,
491 -26, -7, 11, -8, 5, -1, 17, -14, 1, -15,
492 -24, -30, -32, -1, -33, 16, -18, 14, 0, 8,
493 6, 4, 12, 12, 6, -13, -2, -23, -8, -15,
494 4, -17, 5, 36, 18, 30, 8, 22, 10, 14,
496 -30, 11, 15, 20, 0, 8, 9, -15, 15, 0,
497 -5, 9, -23, 6, -8, -13, -13, 7, -5, 3,
498 20, 19, 27, 31, 39, -7, 13, -11, 4, -19,
499 -8, 25, -3, 11, -7, -2, 4, -16, -18, -9,
501 -8, -1, 3, 2, -3, -10, -3, -32, 1, -12,
502 -2, -4, -15, -1, -7, 3, -2, 4, 6, 3,
503 26, 15, 29, 17, 40, -17, 0, -26, 2, -27,
504 2, 29, 4, 36, 10, 6, -9, 0, -27, 0,
506 -40, 2, 29, 22, -7, 14, 12, 5, 7, 7,
507 -12, 9, -18, 26, -26, -14, -24, -4, -16, -9,
508 10, 2, 26, 18, 26, -7, 1, -15, 1, -27,
509 -2, 0, 4, 11, 17, 21, 16, -1, 7, 3,
511 -18, -9, 17, 4, -11, -3, 0, -11, -7, -4,
512 -10, -3, -10, 18, -24, 3, -14, -7, -4, -10,
513 16, -1, 27, 4, 27, -17, -12, -30, 0, -35,
514 9, 3, 12, 36, 35, 30, 2, 13, -2, 11,
516 -66, -8, -23, -11, 14, 5, 17, 16, 19, 2,
517 3, -5, -18, -17, 10, 0, -1, 23, -6, 20,
518 -15, 18, -14, 22, 5, 10, 44, 23, 2, 26,
519 -9, 3, -4, -14, -12, -29, -7, -16, -7, -18,
521 -44, -20, -34, -29, 10, -13, 4, 0, 4, -9,
522 5, -19, -10, -24, 11, 17, 8, 20, 5, 19,
523 -9, 14, -12, 9, 6, 0, 30, 9, 0, 19,
524 2, 7, 2, 10, 5, -20, -21, -1, -17, -9,
526 -77, -16, -9, -9, 6, 11, 21, 37, 10, 10,
527 -4, -5, -13, 3, -7, 0, -13, 11, -17, 6,
528 -25, 1, -15, 9, -7, 9, 32, 19, 0, 18,
529 -2, -22, 3, -15, 12, -5, 4, -2, 17, -5,
531 -55, -28, -21, -27, 2, -7, 8, 20, -4, -1,
532 -1, -18, -5, -4, -5, 16, -2, 8, -5, 5,
533 -19, -2, -14, -3, -6, 0, 18, 4, -2, 11,
534 8, -18, 11, 10, 29, 3, -10, 13, 8, 3,
536 -58, -9, -16, 1, -2, 2, 0, 19, 10, 13,
537 17, 21, 3, 3, 19, -12, 2, 0, -10, 1,
538 -5, 12, 0, 15, 26, 5, 34, 16, 11, 7,
539 -4, 25, 2, -14, 3, -29, -13, -25, -20, -20,
541 -36, -21, -28, -16, -6, -16, -12, 2, -4, 2,
542 20, 7, 11, -4, 20, 4, 12, -2, 1, 0,
543 0, 8, 2, 2, 27, -4, 21, 2, 9, 0,
544 6, 29, 9, 10, 21, -21, -28, -10, -29, -11,
546 -69, -17, -3, 3, -10, 8, 3, 40, 1, 21,
547 10, 21, 8, 23, 1, -13, -8, -11, -21, -11,
548 -15, -4, 0, 2, 13, 5, 23, 12, 7, 0,
549 1, 0, 10, -14, 28, -5, -1, -11, 5, -7,
551 -47, -30, -15, -14, -14, -9, -9, 23, -13, 10,
552 12, 7, 16, 15, 3, 3, 1, -14, -9, -12,
553 -9, -8, 0, -10, 14, -4, 9, -2, 5, -8,
554 13, 3, 18, 10, 45, 3, -16, 4, -4, 0,
556 -79, 11, -15, 4, 18, 23, 20, 5, 30, 7,
557 -7, -2, -21, -21, -8, -3, -10, 28, 4, 31,
558 6, 25, -3, 37, 4, -7, 20, 0, 4, 4,
559 -11, 7, -6, 8, -27, -22, -14, -12, -5, -16,
561 -57, 0, -27, -13, 14, 5, 7, -11, 15, -4,
562 -5, -16, -13, -29, -6, 13, 0, 25, 16, 31,
563 12, 22, -2, 23, 6, -16, 7, -14, 2, -3,
564 0, 12, 0, 33, -9, -13, -28, 3, -14, -7,
566 -90, 3, -2, 6, 10, 29, 24, 26, 21, 15,
567 -15, -2, -16, -1, -25, -4, -21, 16, -6, 18,
568 -3, 8, -5, 24, -8, -7, 9, -4, 1, -3,
569 -5, -18, 1, 7, -2, 1, -2, 1, 19, -3,
571 -67, -8, -14, -11, 7, 11, 11, 9, 7, 3,
572 -13, -16, -8, -9, -24, 12, -10, 13, 5, 17,
573 2, 4, -3, 10, -6, -17, -4, -19, 0, -11,
574 6, -13, 9, 33, 14, 10, -16, 17, 10, 4,
576 -71, 10, -9, 17, 1, 20, 3, 8, 21, 18,
577 6, 24, 0, -1, 0, -16, -6, 5, 0, 13,
578 17, 19, 11, 29, 25, -11, 11, -6, 13, -15,
579 -7, 29, 0, 8, -11, -22, -20, -21, -17, -18,
581 -49, -2, -21, 0, -1, 2, -9, -8, 6, 6,
582 8, 10, 8, -9, 2, 0, 4, 2, 13, 12,
583 23, 15, 12, 16, 26, -21, -2, -21, 11, -23,
584 4, 33, 7, 33, 6, -13, -34, -5, -27, -10,
586 -82, 1, 4, 19, -6, 27, 6, 29, 12, 26,
587 -1, 24, 5, 18, -17, -17, -17, -6, -10, 0,
588 7, 2, 9, 16, 12, -11, 0, -11, 9, -23,
589 0, 3, 8, 8, 13, 1, -8, -7, 7, -6,
591 -60, -10, -7, 1, -9, 8, -6, 13, -2, 15,
592 1, 10, 13, 11, -15, 0, -6, -9, 1, 0,
593 13, -1, 11, 3, 13, -21, -13, -26, 7, -31,
594 10, 7, 16, 33, 31, 10, -22, 8, -1, 2,
596 -3, 7, -5, -5, 8, -2, 17, -9, 18, -24,
597 -2, -19, -10, -4, 28, 17, 5, 28, -2, 7,
598 -4, 15, 7, 8, 6, 23, 13, 21, -14, 20,
599 -17, -18, -11, -33, -30, -11, 23, -13, -5, -9,
601 18, -4, -17, -23, 4, -20, 4, -26, 3, -36,
602 0, -32, -2, -12, 29, 34, 16, 24, 10, 6,
603 0, 12, 8, -4, 8, 13, 0, 6, -16, 12,
604 -5, -13, -3, -7, -13, -3, 8, 2, -14, 0,
606 -13, 0, 8, -3, 0, 4, 21, 11, 9, -16,
607 -10, -18, -5, 16, 10, 16, -5, 15, -13, -5,
608 -15, -1, 6, -4, -6, 23, 2, 16, -17, 12,
609 -10, -44, -3, -33, -6, 12, 34, 1, 20, 3,
611 8, -12, -3, -21, -3, -14, 8, -5, -4, -28,
612 -7, -32, 2, 8, 12, 34, 4, 12, -1, -6,
613 -9, -4, 7, -17, -4, 13, -11, 1, -19, 4,
614 0, -39, 4, -7, 11, 21, 20, 16, 10, 11,
616 4, 6, 0, 7, -8, -4, 0, -6, 9, -13,
617 11, 7, 11, 15, 37, 4, 9, 5, -5, -11,
618 5, 9, 22, 1, 27, 18, 4, 14, -5, 0,
619 -12, 3, -4, -32, -14, -12, 17, -22, -17, -11,
621 26, -6, -11, -10, -12, -23, -12, -23, -5, -24,
622 13, -5, 19, 8, 38, 21, 20, 2, 6, -12,
623 11, 5, 23, -11, 29, 9, -9, 0, -7, -6,
624 -1, 7, 2, -7, 3, -3, 2, -6, -27, -3,
626 -6, -2, 14, 9, -16, 1, 3, 14, 0, -5,
627 3, 8, 16, 36, 19, 3, -1, -6, -17, -24,
628 -4, -7, 21, -11, 14, 18, -7, 9, -9, -7,
629 -6, -22, 3, -33, 10, 11, 28, -7, 7, 0,
631 16, -14, 2, -8, -20, -17, -9, -2, -14, -16,
632 6, -5, 24, 28, 21, 20, 8, -9, -4, -25,
633 1, -11, 22, -24, 15, 8, -21, -5, -11, -14,
634 5, -18, 11, -7, 27, 20, 14, 7, -1, 9,
636 -16, 27, 2, 10, 13, 16, 20, -20, 29, -20,
637 -14, -16, -13, -8, 9, 13, -2, 33, 9, 19,
638 17, 23, 17, 22, 6, 6, -9, -2, -12, -2,
639 -20, -13, -13, -10, -45, -4, 16, -8, -2, -7,
641 5, 15, -9, -7, 9, -2, 8, -37, 14, -31,
642 -11, -29, -5, -16, 11, 30, 7, 29, 21, 18,
643 23, 19, 18, 9, 7, -3, -23, -17, -14, -9,
644 -8, -9, -6, 15, -27, 4, 2, 6, -12, 1,
646 -26, 19, 15, 12, 5, 22, 24, 0, 21, -12,
647 -21, -15, -8, 11, -7, 12, -14, 20, -2, 6,
648 7, 6, 16, 9, -6, 5, -21, -7, -15, -10,
649 -13, -39, -5, -10, -20, 19, 28, 5, 22, 5,
651 -4, 6, 3, -5, 1, 4, 11, -16, 6, -23,
652 -19, -29, 0, 3, -6, 30, -3, 17, 10, 5,
653 13, 2, 17, -3, -5, -3, -35, -21, -17, -17,
654 -2, -35, 2, 15, -3, 28, 13, 21, 13, 13,
656 -8, 25, 8, 23, -3, 13, 3, -17, 20, -8,
657 0, 10, 8, 11, 18, 0, 1, 10, 5, 0,
658 28, 17, 32, 15, 26, 1, -19, -9, -3, -21,
659 -15, 7, -6, -9, -29, -5, 10, -17, -15, -9,
661 13, 13, -3, 5, -7, -4, -9, -34, 5, -20,
662 2, -3, 16, 3, 20, 17, 11, 7, 17, 0,
663 34, 13, 33, 2, 28, -8, -32, -24, -5, -29,
664 -3, 12, 0, 15, -11, 3, -3, -2, -24, -1,
666 -18, 17, 21, 25, -11, 19, 6, 3, 11, 0,
667 -7, 11, 13, 31, 1, 0, -9, -1, -5, -12,
668 18, 0, 31, 2, 13, 1, -30, -14, -7, -29,
669 -9, -18, 1, -10, -4, 18, 22, -3, 10, 2,
671 3, 5, 9, 7, -15, 1, -5, -13, -2, -12,
672 -5, -2, 21, 23, 2, 16, 0, -5, 6, -13,
673 23, -3, 32, -10, 15, -8, -44, -28, -9, -37,
674 2, -13, 9, 15, 12, 27, 7, 12, 0, 11,
676 -44, 6, -30, -8, 9, 10, 11, 14, 23, -5,
677 8, -4, 14, -12, 37, 14, 12, 26, 4, 16,
678 -8, 16, -9, 7, -6, 19, 12, 25, -5, 24,
679 -15, -13, -8, -36, -34, -31, -1, -18, -4, -18,
681 -22, -5, -42, -26, 6, -8, -1, -2, 9, -17,
682 10, -18, 21, -19, 39, 31, 23, 23, 16, 15,
683 -2, 12, -7, -6, -5, 9, -1, 10, -7, 16,
684 -4, -9, 0, -10, -17, -22, -16, -2, -14, -9,
686 -55, -1, -17, -6, 1, 16, 15, 35, 15, 2,
687 0, -4, 19, 8, 20, 13, 1, 14, -7, 3,
688 -18, 0, -10, -5, -19, 19, 0, 21, -8, 16,
689 -9, -39, 0, -36, -10, -7, 9, -4, 20, -5,
691 -33, -13, -29, -24, -1, -1, 2, 18, 0, -9,
692 3, -17, 27, 0, 21, 30, 12, 11, 5, 2,
693 -12, -4, -9, -19, -18, 9, -13, 6, -11, 8,
694 2, -35, 8, -10, 7, 1, -4, 11, 10, 2,
696 -36, 5, -24, 4, -7, 7, -6, 17, 14, 5,
697 22, 22, 35, 8, 46, 1, 17, 3, 0, -2,
698 2, 10, 5, 0, 14, 15, 2, 18, 2, 4,
699 -11, 7, -1, -36, -18, -32, -7, -27, -17, -20,
701 -14, -7, -36, -13, -10, -10, -18, 0, 0, -5,
702 25, 8, 43, 0, 48, 18, 27, 0, 12, -3,
703 7, 6, 7, -13, 15, 5, -11, 3, 0, -2,
704 0, 12, 6, -10, 0, -23, -22, -11, -26, -12,
706 -47, -3, -11, 6, -15, 13, -2, 38, 6, 13,
707 15, 22, 40, 28, 28, 0, 5, -8, -10, -15,
708 -7, -7, 4, -13, 1, 14, -9, 14, 0, -2,
709 -4, -18, 7, -36, 6, -8, 3, -13, 7, -8,
711 -25, -15, -22, -11, -18, -4, -15, 22, -8, 2,
712 17, 9, 48, 20, 30, 17, 16, -11, 1, -16,
713 -2, -10, 5, -26, 2, 4, -22, 0, -2, -10,
714 6, -13, 14, -10, 23, 0, -10, 2, -1, 0,
716 -57, 26, -22, 7, 14, 28, 14, 3, 35, 0,
717 -3, -1, 11, -16, 18, 10, 4, 31, 15, 28,
718 14, 23, 1, 21, -7, 2, -11, 1, -3, 1,
719 -18, -9, -10, -13, -49, -24, -8, -14, -2, -16,
721 -35, 14, -34, -10, 10, 10, 1, -12, 20, -12,
722 0, -15, 18, -24, 20, 27, 14, 28, 27, 27,
723 20, 19, 2, 8, -5, -7, -25, -13, -5, -5,
724 -6, -5, -2, 12, -31, -15, -23, 1, -12, -8,
726 -68, 18, -9, 9, 6, 35, 18, 25, 26, 7,
727 -10, -1, 16, 3, 1, 9, -6, 19, 4, 15,
728 4, 6, 0, 8, -20, 2, -23, -2, -7, -5,
729 -12, -35, -1, -13, -24, 0, 3, 0, 22, -4,
731 -46, 6, -21, -8, 2, 16, 5, 8, 11, -4,
732 -8, -15, 24, -4, 2, 26, 3, 16, 16, 14,
733 9, 2, 1, -4, -19, -7, -36, -17, -9, -13,
734 0, -31, 5, 12, -7, 8, -11, 15, 13, 4,
736 -49, 24, -16, 20, -2, 26, -2, 7, 25, 10,
737 11, 25, 32, 3, 27, -2, 8, 8, 11, 9,
738 24, 17, 16, 14, 13, -2, -20, -5, 4, -17,
739 -14, 12, -3, -13, -33, -25, -14, -23, -15, -19,
741 -27, 12, -28, 2, -6, 7, -15, -9, 11, -1,
742 13, 11, 40, -4, 29, 14, 19, 5, 23, 8,
743 30, 13, 17, 0, 14, -12, -34, -20, 2, -25,
744 -2, 16, 4, 12, -15, -16, -29, -7, -24, -10,
746 -60, 16, -3, 22, -10, 32, 0, 28, 17, 18,
747 3, 25, 37, 23, 10, -3, -2, -3, 0, -3,
748 14, 0, 14, 1, 0, -2, -32, -9, 1, -25,
749 -7, -13, 5, -13, -8, -1, -2, -8, 10, -6,
751 -38, 4, -15, 4, -14, 13, -12, 11, 2, 6,
752 6, 11, 45, 16, 11, 13, 7, -6, 12, -4,
753 20, -3, 16, -12, 1, -12, -46, -24, 0, -33,
754 3, -9, 12, 12, 8, 7, -17, 6, 0, 2
760 73, -32, -60, -15, -26, 59, 2, -33, 30, -10,
761 -3, -17, 8, 30, -1, -26, -4, -22, 10, 16,
762 -36, -5, -11, 56, 37, 6, -10, -5, -13, -3,
763 6, -5, 11, 4, -19, -5, -16, 41, 24, 13,
765 4, -11, -37, 23, -5, 46, -2, -29, -5, -39,
766 -21, -9, 0, 49, 12, -9, -16, -26, 22, 15,
767 -45, -20, -5, 40, 22, 17, -26, 31, -14, 2,
768 -14, 10, 30, 20, -27, -9, -39, 39, 18, 5,
770 34, -25, -48, -28, -11, 34, -2, -41, 9, -7,
771 -17, 21, 20, 24, -17, -33, 0, -24, 10, 42,
772 3, -5, 10, 42, 11, 8, -3, 3, 16, 9,
773 22, -2, 0, -33, -10, 18, 7, 58, 10, 28,
775 -34, -4, -25, 10, 9, 21, -7, -36, -26, -36,
776 -35, 28, 12, 42, -3, -16, -12, -28, 21, 42,
777 -5, -21, 16, 26, -4, 19, -19, 39, 15, 15,
778 1, 13, 19, -17, -17, 14, -15, 55, 4, 19,
780 28, -20, -51, -14, -6, 7, 0, -26, 27, -4,
781 18, -40, -6, 16, -1, -15, 0, -55, -5, -16,
782 -19, 14, -3, 49, 14, 1, -22, -30, -12, 0,
783 24, 15, 9, -17, -45, -29, 4, 28, 51, 35,
785 -40, 0, -28, 24, 14, -5, -4, -21, -7, -33,
786 0, -32, -15, 35, 12, 1, -11, -58, 5, -16,
787 -28, 0, 1, 33, 0, 11, -39, 5, -14, 6,
788 3, 31, 28, -1, -53, -33, -19, 25, 46, 26,
790 -11, -14, -39, -27, 9, -17, -4, -33, 6, 0,
791 4, -1, 5, 10, -17, -22, 5, -57, -5, 9,
792 20, 13, 18, 35, -11, 3, -16, -22, 17, 13,
793 40, 19, -1, -55, -35, -5, 27, 44, 37, 49,
795 -80, 6, -16, 11, 30, -30, -9, -28, -28, -29,
796 -13, 6, -2, 28, -3, -5, -7, -60, 5, 9,
797 11, -1, 24, 19, -27, 13, -32, 13, 15, 19,
798 19, 35, 17, -39, -43, -9, 4, 42, 32, 41,
800 78, -21, -43, 4, -38, 17, 17, -5, 55, 24,
801 -15, -36, 14, 4, 24, -24, 12, 5, 17, 31,
802 -54, -5, -2, 27, 43, -12, 2, 9, -9, -15,
803 22, -3, 28, 21, -20, 3, 20, 28, 9, -5,
805 9, -1, -20, 43, -17, 3, 12, 0, 20, -4,
806 -33, -29, 6, 22, 38, -7, 0, 1, 29, 30,
807 -63, -21, 3, 11, 27, -1, -14, 45, -10, -9,
808 1, 12, 47, 37, -28, 0, -2, 26, 4, -13,
810 39, -14, -30, -8, -22, -8, 12, -12, 34, 27,
811 -29, 2, 26, -2, 8, -31, 16, 3, 17, 57,
812 -14, -6, 19, 13, 16, -10, 8, 17, 20, -2,
813 38, 0, 17, -16, -11, 27, 44, 45, -4, 8,
815 -29, 5, -7, 30, -1, -21, 7, -7, 0, 0,
816 -47, 9, 18, 15, 22, -14, 4, 0, 28, 57,
817 -23, -21, 25, -2, 1, 0, -7, 53, 19, 3,
818 17, 15, 36, 0, -19, 24, 21, 43, -9, 0,
820 33, -10, -34, 5, -17, -35, 15, 1, 53, 30,
821 6, -59, 0, -10, 24, -13, 17, -27, 1, -1,
822 -37, 13, 4, 20, 20, -18, -10, -16, -8, -11,
823 39, 18, 26, 0, -46, -20, 41, 15, 37, 15,
825 -35, 10, -11, 44, 3, -48, 10, 6, 17, 2,
826 -11, -51, -8, 8, 38, 3, 4, -31, 12, -2,
827 -46, -1, 10, 4, 5, -7, -26, 19, -10, -5,
828 18, 34, 45, 15, -54, -24, 18, 13, 31, 7,
830 -5, -3, -21, -7, -2, -60, 10, -5, 32, 34,
831 -7, -20, 11, -16, 8, -20, 21, -29, 1, 24,
832 2, 13, 27, 6, -5, -15, -3, -8, 21, 1,
833 55, 21, 15, -38, -37, 3, 65, 32, 23, 30,
835 -74, 17, 0, 31, 18, -73, 5, 0, -3, 5,
836 -25, -12, 3, 1, 22, -3, 9, -33, 12, 24,
837 -6, -2, 33, -9, -21, -5, -20, 27, 19, 7,
838 34, 37, 34, -22, -44, 0, 41, 29, 17, 21,
840 76, -35, -31, -28, -49, 43, -40, 0, 29, -14,
841 8, 5, 10, 18, -26, -46, 0, 7, 6, 3,
842 -25, -7, -2, 40, 28, 14, 18, -3, -27, -28,
843 -8, -45, -13, 34, -13, -27, -15, 31, 12, 3,
845 7, -15, -9, 9, -28, 29, -45, 5, -6, -43,
846 -9, 12, 2, 36, -12, -30, -11, 3, 17, 3,
847 -34, -22, 3, 24, 12, 24, 2, 32, -28, -22,
848 -29, -29, 5, 50, -21, -31, -38, 29, 7, -5,
850 36, -29, -19, -41, -34, 18, -45, -6, 8, -10,
851 -5, 43, 23, 11, -42, -53, 5, 5, 6, 30,
852 14, -8, 20, 26, 1, 16, 25, 4, 3, -15,
853 7, -41, -23, -3, -4, -3, 8, 48, -1, 17,
855 -32, -8, 3, -2, -13, 4, -50, -1, -27, -39,
856 -23, 51, 15, 30, -27, -37, -7, 1, 17, 29,
857 5, -23, 25, 10, -14, 26, 8, 41, 1, -9,
858 -13, -26, -5, 12, -12, -7, -14, 45, -6, 9,
860 31, -24, -23, -27, -29, -9, -43, 8, 26, -7,
861 30, -17, -4, 3, -26, -35, 5, -24, -10, -28,
862 -9, 12, 5, 33, 5, 8, 5, -29, -26, -24,
863 9, -23, -14, 12, -39, -52, 5, 18, 39, 24,
865 -37, -3, 0, 10, -7, -22, -48, 12, -8, -36,
866 12, -9, -12, 22, -12, -19, -6, -28, 0, -29,
867 -18, -3, 11, 17, -10, 18, -10, 7, -27, -18,
868 -11, -7, 3, 28, -47, -55, -18, 15, 34, 16,
870 -8, -17, -10, -40, -13, -34, -47, 0, 5, -4,
871 16, 21, 8, -2, -42, -43, 10, -26, -10, -2,
872 31, 11, 27, 19, -21, 10, 12, -20, 3, -11,
873 25, -20, -25, -25, -29, -28, 28, 34, 25, 38,
875 -77, 2, 11, -1, 7, -47, -52, 5, -29, -33,
876 -1, 28, 0, 15, -28, -26, -2, -30, 0, -2,
877 22, -4, 33, 3, -36, 21, -3, 15, 2, -5,
878 4, -4, -6, -9, -37, -31, 5, 32, 20, 30,
880 81, -25, -14, -8, -61, 0, -25, 28, 54, 20,
881 -3, -14, 17, -8, 0, -44, 16, 35, 13, 18,
882 -43, -7, 6, 11, 33, -4, 30, 11, -22, -40,
883 6, -43, 3, 50, -14, -18, 22, 18, -1, -16,
885 12, -4, 8, 29, -39, -12, -30, 33, 19, -8,
886 -21, -6, 8, 9, 13, -28, 4, 31, 24, 18,
887 -52, -23, 12, -4, 18, 5, 14, 47, -24, -34,
888 -14, -27, 22, 66, -22, -22, -1, 16, -6, -24,
890 41, -18, -2, -21, -45, -24, -30, 21, 33, 24,
891 -17, 24, 29, -15, -16, -51, 21, 33, 13, 45,
892 -3, -8, 28, -2, 7, -2, 37, 19, 7, -27,
893 22, -39, -7, 12, -5, 5, 45, 35, -15, -1,
895 -27, 1, 20, 17, -24, -38, -35, 26, -1, -4,
896 -35, 32, 21, 3, -2, -35, 8, 29, 24, 44,
897 -12, -24, 34, -18, -8, 7, 21, 55, 5, -21,
898 2, -23, 11, 28, -13, 1, 22, 33, -21, -10,
900 36, -13, -5, -7, -40, -51, -28, 36, 52, 27,
901 18, -36, 2, -22, 0, -33, 21, 2, -3, -13,
902 -26, 11, 14, 4, 10, -10, 18, -14, -22, -36,
903 24, -21, 1, 28, -40, -42, 42, 5, 25, 5,
905 -32, 6, 17, 31, -19, -65, -33, 41, 16, -1,
906 0, -29, -6, -4, 13, -17, 9, -1, 8, -14,
907 -35, -3, 19, -11, -4, 0, 1, 21, -23, -30,
908 3, -5, 20, 44, -48, -46, 19, 3, 20, -3,
910 -3, -7, 6, -20, -25, -77, -32, 29, 31, 30,
911 4, 2, 14, -29, -16, -40, 26, 0, -3, 12,
912 13, 10, 36, -9, -15, -8, 24, -6, 7, -22,
913 40, -17, -8, -9, -31, -18, 66, 22, 11, 19,
915 -72, 13, 29, 18, -4, -90, -37, 34, -4, 1,
916 -13, 9, 6, -11, -2, -24, 13, -3, 7, 11,
917 4, -4, 42, -25, -31, 1, 8, 29, 6, -17,
918 19, -2, 10, 6, -38, -22, 42, 19, 6, 11,
920 116, -20, -68, -30, -28, 83, 28, -18, 32, -22,
921 -13, -21, 5, 28, 5, -7, -24, -8, -22, 17,
922 -23, 30, -25, 45, 15, -9, -11, -18, 22, -10,
923 4, -2, 19, -12, 23, 3, -43, 2, 12, -4,
925 47, 0, -45, 7, -7, 69, 23, -13, -2, -51,
926 -32, -14, -3, 47, 19, 8, -37, -11, -10, 16,
927 -32, 15, -19, 29, 0, 1, -28, 18, 20, -4,
928 -16, 13, 38, 3, 15, 0, -66, 0, 7, -13,
930 77, -13, -56, -43, -13, 57, 23, -26, 11, -19,
931 -27, 16, 17, 22, -10, -15, -19, -10, -22, 43,
932 16, 30, -2, 31, -11, -6, -5, -9, 52, 2,
933 20, 0, 8, -50, 33, 27, -19, 19, -1, 9,
935 8, 6, -33, -4, 7, 44, 18, -21, -23, -48,
936 -46, 24, 9, 40, 3, 1, -32, -13, -11, 43,
937 7, 14, 3, 15, -26, 3, -21, 26, 50, 8,
938 0, 16, 27, -34, 25, 23, -43, 17, -6, 1,
940 71, -9, -59, -29, -8, 30, 26, -11, 30, -16,
941 8, -44, -9, 14, 5, 2, -19, -40, -38, -15,
942 -7, 50, -17, 38, -7, -14, -24, -43, 22, -6,
943 22, 19, 17, -34, -2, -20, -23, -10, 39, 16,
945 2, 11, -36, 9, 13, 17, 21, -6, -5, -45,
946 -10, -36, -18, 33, 19, 19, -31, -44, -27, -15,
947 -16, 34, -11, 22, -22, -4, -40, -7, 21, 0,
948 1, 35, 36, -18, -10, -24, -46, -12, 34, 8,
950 32, -2, -47, -42, 7, 5, 21, -18, 9, -12,
951 -5, -5, 2, 8, -10, -4, -14, -42, -38, 10,
952 33, 49, 5, 24, -33, -12, -17, -35, 52, 6,
953 38, 22, 7, -72, 7, 3, 0, 6, 25, 30,
955 -36, 18, -24, -3, 28, -7, 16, -13, -26, -41,
956 -24, 1, -5, 26, 3, 12, -27, -46, -27, 10,
957 24, 34, 10, 8, -49, -2, -34, 0, 51, 12,
958 17, 38, 25, -56, 0, 0, -22, 3, 20, 22,
960 121, -9, -50, -10, -40, 40, 43, 9, 58, 12,
961 -25, -41, 11, 2, 31, -5, -8, 19, -15, 32,
962 -41, 30, -16, 16, 20, -28, 0, -3, 26, -22,
963 19, 0, 36, 4, 22, 12, -6, -9, -1, -24,
965 52, 10, -27, 27, -18, 26, 38, 14, 23, -16,
966 -44, -33, 3, 20, 45, 10, -20, 15, -3, 31,
967 -50, 14, -10, 0, 5, -17, -15, 32, 24, -16,
968 -1, 15, 55, 20, 14, 8, -29, -12, -7, -32,
970 82, -3, -38, -23, -24, 15, 38, 2, 37, 15,
971 -39, -2, 23, -4, 15, -12, -3, 17, -15, 58,
972 -1, 29, 6, 2, -5, -26, 7, 4, 56, -9,
973 35, 3, 25, -33, 32, 36, 17, 7, -15, -9,
975 13, 17, -15, 15, -3, 1, 33, 7, 1, -12,
976 -58, 5, 15, 13, 29, 3, -16, 13, -4, 57,
977 -10, 13, 11, -13, -21, -15, -9, 40, 55, -3,
978 14, 19, 44, -17, 24, 32, -5, 4, -21, -18,
980 76, 1, -41, -9, -19, -12, 41, 17, 55, 18,
981 -3, -63, -3, -12, 30, 5, -3, -12, -31, 0,
982 -24, 49, -8, 9, -1, -33, -12, -29, 27, -18,
983 37, 21, 34, -17, -3, -11, 14, -23, 25, -2,
985 7, 22, -18, 29, 1, -25, 36, 21, 20, -9,
986 -22, -56, -11, 6, 45, 21, -15, -16, -20, -1,
987 -33, 34, -2, -6, -17, -23, -28, 6, 25, -12,
988 16, 37, 53, -1, -11, -15, -8, -25, 20, -11,
990 37, 8, -29, -22, -4, -37, 36, 9, 34, 22,
991 -17, -24, 8, -18, 15, -2, 1, -14, -31, 25,
992 15, 48, 13, -4, -28, -31, -5, -21, 57, -4,
993 53, 24, 23, -55, 6, 12, 37, -6, 11, 11,
995 -31, 28, -6, 16, 16, -50, 31, 14, 0, -6,
996 -36, -17, 0, 0, 29, 14, -11, -18, -20, 25,
997 6, 33, 19, -20, -43, -21, -21, 14, 55, 0,
998 32, 40, 42, -39, -1, 8, 14, -8, 6, 3,
1000 119, -24, -39, -44, -51, 66, -14, 15, 31, -26,
1001 -1, 0, 7, 16, -19, -28, -19, 22, -26, 4,
1002 -13, 28, -16, 29, 5, -1, 16, -16, 8, -35,
1003 -10, -42, -4, 17, 29, -19, -42, -7, 0, -15,
1005 50, -3, -16, -5, -30, 53, -19, 20, -3, -55,
1006 -19, 8, 0, 34, -5, -11, -32, 18, -15, 4,
1007 -22, 13, -10, 13, -9, 8, 0, 19, 7, -29,
1008 -31, -26, 13, 33, 21, -22, -65, -9, -4, -23,
1010 79, -17, -27, -56, -36, 41, -19, 8, 10, -22,
1011 -15, 39, 20, 9, -35, -35, -15, 20, -26, 31,
1012 26, 27, 6, 15, -20, 0, 23, -8, 38, -22,
1013 5, -38, -15, -20, 39, 4, -18, 9, -13, -1,
1015 10, 3, -4, -18, -15, 27, -24, 13, -24, -51,
1016 -34, 47, 12, 28, -21, -19, -27, 16, -15, 30,
1017 17, 12, 12, 0, -36, 10, 7, 27, 37, -16,
1018 -15, -22, 3, -4, 31, 1, -42, 7, -18, -9,
1020 74, -12, -30, -42, -30, 14, -16, 23, 29, -19,
1021 20, -21, -7, 1, -19, -17, -14, -10, -43, -27,
1022 3, 48, -8, 22, -16, -7, 4, -42, 9, -31,
1023 6, -20, -6, -4, 3, -43, -22, -20, 28, 5,
1025 5, 7, -7, -4, -9, 0, -21, 28, -6, -48,
1026 2, -14, -15, 20, -5, 0, -27, -14, -32, -28,
1027 -5, 32, -2, 6, -32, 3, -12, -5, 8, -25,
1028 -14, -4, 12, 11, -4, -47, -45, -22, 22, -2,
1030 34, -6, -18, -55, -15, -11, -21, 16, 8, -16,
1031 6, 16, 5, -4, -35, -24, -10, -12, -43, -1,
1032 43, 47, 14, 8, -43, -5, 10, -34, 39, -18,
1033 22, -16, -17, -42, 13, -19, 1, -3, 14, 20,
1035 -34, 14, 4, -17, 5, -24, -26, 20, -27, -45,
1036 -12, 24, -2, 13, -21, -8, -22, -16, -32, -2,
1037 34, 31, 20, -7, -58, 5, -5, 2, 38, -12,
1038 2, -1, 1, -26, 5, -23, -21, -6, 8, 11,
1040 124, -13, -21, -23, -62, 23, 0, 43, 57, 8,
1041 -13, -18, 14, -10, 6, -26, -3, 49, -19, 19,
1042 -31, 27, -7, 0, 11, -20, 29, -1, 12, -47,
1043 4, -39, 11, 34, 28, -9, -5, -19, -13, -34,
1045 55, 6, 1, 14, -41, 10, -4, 48, 22, -20,
1046 -31, -10, 5, 7, 20, -9, -16, 45, -8, 19,
1047 -40, 12, -1, -15, -4, -10, 12, 34, 11, -41,
1048 -16, -24, 30, 49, 20, -13, -28, -22, -18, -43,
1050 84, -6, -9, -36, -47, -1, -4, 36, 36, 12,
1051 -27, 20, 26, -17, -9, -33, 1, 47, -19, 46,
1052 9, 27, 15, -13, -15, -18, 35, 6, 42, -33,
1053 20, -36, 1, -4, 38, 14, 18, -2, -27, -20,
1055 15, 13, 13, 1, -26, -14, -9, 41, 1, -16,
1056 -46, 27, 18, 1, 4, -16, -11, 43, -8, 45,
1057 0, 11, 21, -29, -30, -8, 19, 42, 41, -28,
1058 0, -20, 20, 11, 30, 10, -4, -5, -32, -28,
1060 79, -2, -12, -22, -42, -28, -1, 51, 54, 15,
1061 8, -41, 0, -24, 6, -15, 1, 17, -36, -12,
1062 -14, 47, 0, -6, -11, -26, 16, -27, 13, -43,
1063 22, -18, 10, 12, 2, -34, 15, -33, 13, -13,
1065 10, 18, 10, 15, -21, -41, -6, 56, 19, -13,
1066 -9, -33, -9, -6, 20, 1, -11, 13, -24, -13,
1067 -23, 32, 6, -22, -26, -15, 0, 8, 12, -37,
1068 1, -2, 28, 27, -5, -37, -7, -35, 8, -21,
1070 39, 4, 0, -35, -27, -53, -6, 44, 33, 18,
1071 -5, -2, 11, -31, -9, -22, 6, 15, -36, 13,
1072 25, 46, 23, -20, -37, -24, 23, -19, 43, -29,
1073 38, -14, 0, -26, 12, -10, 38, -16, 0, 0,
1075 -29, 25, 22, 2, -6, -67, -11, 49, -1, -10,
1076 -24, 5, 3, -13, 4, -5, -6, 11, -25, 12,
1077 16, 31, 28, -36, -53, -13, 6, 16, 42, -24,
1078 17, 1, 18, -10, 4, -13, 15, -18, -5, -7,
1080 29, -25, -22, -2, 6, 67, 11, -49, 1, 10,
1081 24, -5, -3, 13, -4, 5, 6, -11, 25, -12,
1082 -16, -31, -28, 36, 53, 13, -6, -16, -42, 24,
1083 -17, -1, -18, 10, -4, 13, -15, 18, 5, 7,
1085 -39, -4, 0, 35, 27, 53, 6, -44, -33, -18,
1086 5, 2, -11, 31, 9, 22, -6, -15, 36, -13,
1087 -25, -46, -23, 20, 37, 24, -23, 19, -43, 29,
1088 -38, 14, 0, 26, -12, 10, -38, 16, 0, 0,
1090 -10, -18, -10, -15, 21, 41, 6, -56, -19, 13,
1091 9, 33, 9, 6, -20, -1, 11, -13, 24, 13,
1092 23, -32, -6, 22, 26, 15, 0, -8, -12, 37,
1093 -1, 2, -28, -27, 5, 37, 7, 35, -8, 21,
1095 -79, 2, 12, 22, 42, 28, 1, -51, -54, -15,
1096 -8, 41, 0, 24, -6, 15, -1, -17, 36, 12,
1097 14, -47, 0, 6, 11, 26, -16, 27, -13, 43,
1098 -22, 18, -10, -12, -2, 34, -15, 33, -13, 13,
1100 -15, -13, -13, -1, 26, 14, 9, -41, -1, 16,
1101 46, -27, -18, -1, -4, 16, 11, -43, 8, -45,
1102 0, -11, -21, 29, 30, 8, -19, -42, -41, 28,
1103 0, 20, -20, -11, -30, -10, 4, 5, 32, 28,
1105 -84, 6, 9, 36, 47, 1, 4, -36, -36, -12,
1106 27, -20, -26, 17, 9, 33, -1, -47, 19, -46,
1107 -9, -27, -15, 13, 15, 18, -35, -6, -42, 33,
1108 -20, 36, -1, 4, -38, -14, -18, 2, 27, 20,
1110 -55, -6, -1, -14, 41, -10, 4, -48, -22, 20,
1111 31, 10, -5, -7, -20, 9, 16, -45, 8, -19,
1112 40, -12, 1, 15, 4, 10, -12, -34, -11, 41,
1113 16, 24, -30, -49, -20, 13, 28, 22, 18, 43,
1115 -124, 13, 21, 23, 62, -23, 0, -43, -57, -8,
1116 13, 18, -14, 10, -6, 26, 3, -49, 19, -19,
1117 31, -27, 7, 0, -11, 20, -29, 1, -12, 47,
1118 -4, 39, -11, -34, -28, 9, 5, 19, 13, 34,
1120 34, -14, -4, 17, -5, 24, 26, -20, 27, 45,
1121 12, -24, 2, -13, 21, 8, 22, 16, 32, 2,
1122 -34, -31, -20, 7, 58, -5, 5, -2, -38, 12,
1123 -2, 1, -1, 26, -5, 23, 21, 6, -8, -11,
1125 -34, 6, 18, 55, 15, 11, 21, -16, -8, 16,
1126 -6, -16, -5, 4, 35, 24, 10, 12, 43, 1,
1127 -43, -47, -14, -8, 43, 5, -10, 34, -39, 18,
1128 -22, 16, 17, 42, -13, 19, -1, 3, -14, -20,
1130 -5, -7, 7, 4, 9, 0, 21, -28, 6, 48,
1131 -2, 14, 15, -20, 5, 0, 27, 14, 32, 28,
1132 5, -32, 2, -6, 32, -3, 12, 5, -8, 25,
1133 14, 4, -12, -11, 4, 47, 45, 22, -22, 2,
1135 -74, 12, 30, 42, 30, -14, 16, -23, -29, 19,
1136 -20, 21, 7, -1, 19, 17, 14, 10, 43, 27,
1137 -3, -48, 8, -22, 16, 7, -4, 42, -9, 31,
1138 -6, 20, 6, 4, -3, 43, 22, 20, -28, -5,
1140 -10, -3, 4, 18, 15, -27, 24, -13, 24, 51,
1141 34, -47, -12, -28, 21, 19, 27, -16, 15, -30,
1142 -17, -12, -12, 0, 36, -10, -7, -27, -37, 16,
1143 15, 22, -3, 4, -31, -1, 42, -7, 18, 9,
1145 -79, 17, 27, 56, 36, -41, 19, -8, -10, 22,
1146 15, -39, -20, -9, 35, 35, 15, -20, 26, -31,
1147 -26, -27, -6, -15, 20, 0, -23, 8, -38, 22,
1148 -5, 38, 15, 20, -39, -4, 18, -9, 13, 1,
1150 -50, 3, 16, 5, 30, -53, 19, -20, 3, 55,
1151 19, -8, 0, -34, 5, 11, 32, -18, 15, -4,
1152 22, -13, 10, -13, 9, -8, 0, -19, -7, 29,
1153 31, 26, -13, -33, -21, 22, 65, 9, 4, 23,
1155 -119, 24, 39, 44, 51, -66, 14, -15, -31, 26,
1156 1, 0, -7, -16, 19, 28, 19, -22, 26, -4,
1157 13, -28, 16, -29, -5, 1, -16, 16, -8, 35,
1158 10, 42, 4, -17, -29, 19, 42, 7, 0, 15,
1160 31, -28, 6, -16, -16, 50, -31, -14, 0, 6,
1161 36, 17, 0, 0, -29, -14, 11, 18, 20, -25,
1162 -6, -33, -19, 20, 43, 21, 21, -14, -55, 0,
1163 -32, -40, -42, 39, 1, -8, -14, 8, -6, -3,
1165 -37, -8, 29, 22, 4, 37, -36, -9, -34, -22,
1166 17, 24, -8, 18, -15, 2, -1, 14, 31, -25,
1167 -15, -48, -13, 4, 28, 31, 5, 21, -57, 4,
1168 -53, -24, -23, 55, -6, -12, -37, 6, -11, -11,
1170 -7, -22, 18, -29, -1, 25, -36, -21, -20, 9,
1171 22, 56, 11, -6, -45, -21, 15, 16, 20, 1,
1172 33, -34, 2, 6, 17, 23, 28, -6, -25, 12,
1173 -16, -37, -53, 1, 11, 15, 8, 25, -20, 11,
1175 -76, -1, 41, 9, 19, 12, -41, -17, -55, -18,
1176 3, 63, 3, 12, -30, -5, 3, 12, 31, 0,
1177 24, -49, 8, -9, 1, 33, 12, 29, -27, 18,
1178 -37, -21, -34, 17, 3, 11, -14, 23, -25, 2,
1180 -13, -17, 15, -15, 3, -1, -33, -7, -1, 12,
1181 58, -5, -15, -13, -29, -3, 16, -13, 4, -57,
1182 10, -13, -11, 13, 21, 15, 9, -40, -55, 3,
1183 -14, -19, -44, 17, -24, -32, 5, -4, 21, 18,
1185 -82, 3, 38, 23, 24, -15, -38, -2, -37, -15,
1186 39, 2, -23, 4, -15, 12, 3, -17, 15, -58,
1187 1, -29, -6, -2, 5, 26, -7, -4, -56, 9,
1188 -35, -3, -25, 33, -32, -36, -17, -7, 15, 9,
1190 -52, -10, 27, -27, 18, -26, -38, -14, -23, 16,
1191 44, 33, -3, -20, -45, -10, 20, -15, 3, -31,
1192 50, -14, 10, 0, -5, 17, 15, -32, -24, 16,
1193 1, -15, -55, -20, -14, -8, 29, 12, 7, 32,
1195 -121, 9, 50, 10, 40, -40, -43, -9, -58, -12,
1196 25, 41, -11, -2, -31, 5, 8, -19, 15, -32,
1197 41, -30, 16, -16, -20, 28, 0, 3, -26, 22,
1198 -19, 0, -36, -4, -22, -12, 6, 9, 1, 24,
1200 36, -18, 24, 3, -28, 7, -16, 13, 26, 41,
1201 24, -1, 5, -26, -3, -12, 27, 46, 27, -10,
1202 -24, -34, -10, -8, 49, 2, 34, 0, -51, -12,
1203 -17, -38, -25, 56, 0, 0, 22, -3, -20, -22,
1205 -32, 2, 47, 42, -7, -5, -21, 18, -9, 12,
1206 5, 5, -2, -8, 10, 4, 14, 42, 38, -10,
1207 -33, -49, -5, -24, 33, 12, 17, 35, -52, -6,
1208 -38, -22, -7, 72, -7, -3, 0, -6, -25, -30,
1210 -2, -11, 36, -9, -13, -17, -21, 6, 5, 45,
1211 10, 36, 18, -33, -19, -19, 31, 44, 27, 15,
1212 16, -34, 11, -22, 22, 4, 40, 7, -21, 0,
1213 -1, -35, -36, 18, 10, 24, 46, 12, -34, -8,
1215 -71, 9, 59, 29, 8, -30, -26, 11, -30, 16,
1216 -8, 44, 9, -14, -5, -2, 19, 40, 38, 15,
1217 7, -50, 17, -38, 7, 14, 24, 43, -22, 6,
1218 -22, -19, -17, 34, 2, 20, 23, 10, -39, -16,
1220 -8, -6, 33, 4, -7, -44, -18, 21, 23, 48,
1221 46, -24, -9, -40, -3, -1, 32, 13, 11, -43,
1222 -7, -14, -3, -15, 26, -3, 21, -26, -50, -8,
1223 0, -16, -27, 34, -25, -23, 43, -17, 6, -1,
1225 -77, 13, 56, 43, 13, -57, -23, 26, -11, 19,
1226 27, -16, -17, -22, 10, 15, 19, 10, 22, -43,
1227 -16, -30, 2, -31, 11, 6, 5, 9, -52, -2,
1228 -20, 0, -8, 50, -33, -27, 19, -19, 1, -9,
1230 -47, 0, 45, -7, 7, -69, -23, 13, 2, 51,
1231 32, 14, 3, -47, -19, -8, 37, 11, 10, -16,
1232 32, -15, 19, -29, 0, -1, 28, -18, -20, 4,
1233 16, -13, -38, -3, -15, 0, 66, 0, -7, 13,
1235 -116, 20, 68, 30, 28, -83, -28, 18, -32, 22,
1236 13, 21, -5, -28, -5, 7, 24, 8, 22, -17,
1237 23, -30, 25, -45, -15, 9, 11, 18, -22, 10,
1238 -4, 2, -19, 12, -23, -3, 43, -2, -12, 4,
1240 72, -13, -29, -18, 4, 90, 37, -34, 4, -1,
1241 13, -9, -6, 11, 2, 24, -13, 3, -7, -11,
1242 -4, 4, -42, 25, 31, -1, -8, -29, -6, 17,
1243 -19, 2, -10, -6, 38, 22, -42, -19, -6, -11,
1245 3, 7, -6, 20, 25, 77, 32, -29, -31, -30,
1246 -4, -2, -14, 29, 16, 40, -26, 0, 3, -12,
1247 -13, -10, -36, 9, 15, 8, -24, 6, -7, 22,
1248 -40, 17, 8, 9, 31, 18, -66, -22, -11, -19,
1250 32, -6, -17, -31, 19, 65, 33, -41, -16, 1,
1251 0, 29, 6, 4, -13, 17, -9, 1, -8, 14,
1252 35, 3, -19, 11, 4, 0, -1, -21, 23, 30,
1253 -3, 5, -20, -44, 48, 46, -19, -3, -20, 3,
1255 -36, 13, 5, 7, 40, 51, 28, -36, -52, -27,
1256 -18, 36, -2, 22, 0, 33, -21, -2, 3, 13,
1257 26, -11, -14, -4, -10, 10, -18, 14, 22, 36,
1258 -24, 21, -1, -28, 40, 42, -42, -5, -25, -5,
1260 27, -1, -20, -17, 24, 38, 35, -26, 1, 4,
1261 35, -32, -21, -3, 2, 35, -8, -29, -24, -44,
1262 12, 24, -34, 18, 8, -7, -21, -55, -5, 21,
1263 -2, 23, -11, -28, 13, -1, -22, -33, 21, 10,
1265 -41, 18, 2, 21, 45, 24, 30, -21, -33, -24,
1266 17, -24, -29, 15, 16, 51, -21, -33, -13, -45,
1267 3, 8, -28, 2, -7, 2, -37, -19, -7, 27,
1268 -22, 39, 7, -12, 5, -5, -45, -35, 15, 1,
1270 -12, 4, -8, -29, 39, 12, 30, -33, -19, 8,
1271 21, 6, -8, -9, -13, 28, -4, -31, -24, -18,
1272 52, 23, -12, 4, -18, -5, -14, -47, 24, 34,
1273 14, 27, -22, -66, 22, 22, 1, -16, 6, 24,
1275 -81, 25, 14, 8, 61, 0, 25, -28, -54, -20,
1276 3, 14, -17, 8, 0, 44, -16, -35, -13, -18,
1277 43, 7, -6, -11, -33, 4, -30, -11, 22, 40,
1278 -6, 43, -3, -50, 14, 18, -22, -18, 1, 16,
1280 77, -2, -11, 1, -7, 47, 52, -5, 29, 33,
1281 1, -28, 0, -15, 28, 26, 2, 30, 0, 2,
1282 -22, 4, -33, -3, 36, -21, 3, -15, -2, 5,
1283 -4, 4, 6, 9, 37, 31, -5, -32, -20, -30,
1285 8, 17, 10, 40, 13, 34, 47, 0, -5, 4,
1286 -16, -21, -8, 2, 42, 43, -10, 26, 10, 2,
1287 -31, -11, -27, -19, 21, -10, -12, 20, -3, 11,
1288 -25, 20, 25, 25, 29, 28, -28, -34, -25, -38,
1290 37, 3, 0, -10, 7, 22, 48, -12, 8, 36,
1291 -12, 9, 12, -22, 12, 19, 6, 28, 0, 29,
1292 18, 3, -11, -17, 10, -18, 10, -7, 27, 18,
1293 11, 7, -3, -28, 47, 55, 18, -15, -34, -16,
1295 -31, 24, 23, 27, 29, 9, 43, -8, -26, 7,
1296 -30, 17, 4, -3, 26, 35, -5, 24, 10, 28,
1297 9, -12, -5, -33, -5, -8, -5, 29, 26, 24,
1298 -9, 23, 14, -12, 39, 52, -5, -18, -39, -24,
1300 32, 8, -3, 2, 13, -4, 50, 1, 27, 39,
1301 23, -51, -15, -30, 27, 37, 7, -1, -17, -29,
1302 -5, 23, -25, -10, 14, -26, -8, -41, -1, 9,
1303 13, 26, 5, -12, 12, 7, 14, -45, 6, -9,
1305 -36, 29, 19, 41, 34, -18, 45, 6, -8, 10,
1306 5, -43, -23, -11, 42, 53, -5, -5, -6, -30,
1307 -14, 8, -20, -26, -1, -16, -25, -4, -3, 15,
1308 -7, 41, 23, 3, 4, 3, -8, -48, 1, -17,
1310 -7, 15, 9, -9, 28, -29, 45, -5, 6, 43,
1311 9, -12, -2, -36, 12, 30, 11, -3, -17, -3,
1312 34, 22, -3, -24, -12, -24, -2, -32, 28, 22,
1313 29, 29, -5, -50, 21, 31, 38, -29, -7, 5,
1315 -76, 35, 31, 28, 49, -43, 40, 0, -29, 14,
1316 -8, -5, -10, -18, 26, 46, 0, -7, -6, -3,
1317 25, 7, 2, -40, -28, -14, -18, 3, 27, 28,
1318 8, 45, 13, -34, 13, 27, 15, -31, -12, -3,
1320 74, -17, 0, -31, -18, 73, -5, 0, 3, -5,
1321 25, 12, -3, -1, -22, 3, -9, 33, -12, -24,
1322 6, 2, -33, 9, 21, 5, 20, -27, -19, -7,
1323 -34, -37, -34, 22, 44, 0, -41, -29, -17, -21,
1325 5, 3, 21, 7, 2, 60, -10, 5, -32, -34,
1326 7, 20, -11, 16, -8, 20, -21, 29, -1, -24,
1327 -2, -13, -27, -6, 5, 15, 3, 8, -21, -1,
1328 -55, -21, -15, 38, 37, -3, -65, -32, -23, -30,
1330 35, -10, 11, -44, -3, 48, -10, -6, -17, -2,
1331 11, 51, 8, -8, -38, -3, -4, 31, -12, 2,
1332 46, 1, -10, -4, -5, 7, 26, -19, 10, 5,
1333 -18, -34, -45, -15, 54, 24, -18, -13, -31, -7,
1335 -33, 10, 34, -5, 17, 35, -15, -1, -53, -30,
1336 -6, 59, 0, 10, -24, 13, -17, 27, -1, 1,
1337 37, -13, -4, -20, -20, 18, 10, 16, 8, 11,
1338 -39, -18, -26, 0, 46, 20, -41, -15, -37, -15,
1340 29, -5, 7, -30, 1, 21, -7, 7, 0, 0,
1341 47, -9, -18, -15, -22, 14, -4, 0, -28, -57,
1342 23, 21, -25, 2, -1, 0, 7, -53, -19, -3,
1343 -17, -15, -36, 0, 19, -24, -21, -43, 9, 0,
1345 -39, 14, 30, 8, 22, 8, -12, 12, -34, -27,
1346 29, -2, -26, 2, -8, 31, -16, -3, -17, -57,
1347 14, 6, -19, -13, -16, 10, -8, -17, -20, 2,
1348 -38, 0, -17, 16, 11, -27, -44, -45, 4, -8,
1350 -9, 1, 20, -43, 17, -3, -12, 0, -20, 4,
1351 33, 29, -6, -22, -38, 7, 0, -1, -29, -30,
1352 63, 21, -3, -11, -27, 1, 14, -45, 10, 9,
1353 -1, -12, -47, -37, 28, 0, 2, -26, -4, 13,
1355 -78, 21, 43, -4, 38, -17, -17, 5, -55, -24,
1356 15, 36, -14, -4, -24, 24, -12, -5, -17, -31,
1357 54, 5, 2, -27, -43, 12, -2, -9, 9, 15,
1358 -22, 3, -28, -21, 20, -3, -20, -28, -9, 5,
1360 80, -6, 16, -11, -30, 30, 9, 28, 28, 29,
1361 13, -6, 2, -28, 3, 5, 7, 60, -5, -9,
1362 -11, 1, -24, -19, 27, -13, 32, -13, -15, -19,
1363 -19, -35, -17, 39, 43, 9, -4, -42, -32, -41,
1365 11, 14, 39, 27, -9, 17, 4, 33, -6, 0,
1366 -4, 1, -5, -10, 17, 22, -5, 57, 5, -9,
1367 -20, -13, -18, -35, 11, -3, 16, 22, -17, -13,
1368 -40, -19, 1, 55, 35, 5, -27, -44, -37, -49,
1370 40, 0, 28, -24, -14, 5, 4, 21, 7, 33,
1371 0, 32, 15, -35, -12, -1, 11, 58, -5, 16,
1372 28, 0, -1, -33, 0, -11, 39, -5, 14, -6,
1373 -3, -31, -28, 1, 53, 33, 19, -25, -46, -26,
1375 -28, 20, 51, 14, 6, -7, 0, 26, -27, 4,
1376 -18, 40, 6, -16, 1, 15, 0, 55, 5, 16,
1377 19, -14, 3, -49, -14, -1, 22, 30, 12, 0,
1378 -24, -15, -9, 17, 45, 29, -4, -28, -51, -35,
1380 34, 4, 25, -10, -9, -21, 7, 36, 26, 36,
1381 35, -28, -12, -42, 3, 16, 12, 28, -21, -42,
1382 5, 21, -16, -26, 4, -19, 19, -39, -15, -15,
1383 -1, -13, -19, 17, 17, -14, 15, -55, -4, -19,
1385 -34, 25, 48, 28, 11, -34, 2, 41, -9, 7,
1386 17, -21, -20, -24, 17, 33, 0, 24, -10, -42,
1387 -3, 5, -10, -42, -11, -8, 3, -3, -16, -9,
1388 -22, 2, 0, 33, 10, -18, -7, -58, -10, -28,
1390 -4, 11, 37, -23, 5, -46, 2, 29, 5, 39,
1391 21, 9, 0, -49, -12, 9, 16, 26, -22, -15,
1392 45, 20, 5, -40, -22, -17, 26, -31, 14, -2,
1393 14, -10, -30, -20, 27, 9, 39, -39, -18, -5,
1395 -73, 32, 60, 15, 26, -59, -2, 33, -30, 10,
1396 3, 17, -8, -30, 1, 26, 4, 22, -10, -16,
1397 36, 5, 11, -56, -37, -6, 10, 5, 13, 3,
1398 -6, 5, -11, -4, 19, 5, 16, -41, -24, -13
1403 19657, 18474, 18365, 17520, 21048, 18231, 18584, 16671,
1404 20363, 19069, 19409, 18430, 21844, 18753, 19613, 17411,
1405 20389, 21772, 20129, 21702, 20978, 20472, 19627, 19387,
1406 21477, 23134, 21841, 23919, 22089, 21519, 21134, 20852,
1407 19675, 17821, 19044, 17477, 19986, 16955, 18446, 16086,
1408 21138, 18899, 20952, 18929, 21452, 17833, 20104, 17159,
1409 19770, 20056, 20336, 20866, 19329, 18217, 18908, 18004,
1410 21556, 21948, 23079, 23889, 20922, 19544, 20984, 19781,
1411 19781, 20984, 19544, 20922, 23889, 23079, 21948, 21556,
1412 18004, 18908, 18217, 19329, 20866, 20336, 20056, 19770,
1413 17159, 20104, 17833, 21452, 18929, 20952, 18899, 21138,
1414 16086, 18446, 16955, 19986, 17477, 19044, 17821, 19675,
1415 20852, 21134, 21519, 22089, 23919, 21841, 23134, 21477,
1416 19387, 19627, 20472, 20978, 21702, 20129, 21772, 20389,
1417 17411, 19613, 18753, 21844, 18430, 19409, 19069, 20363,
1418 16671, 18584, 18231, 21048, 17520, 18365, 18474, 19657,
1422 12174, 13380, 13879, 13832, 13170, 13227, 13204, 12053,
1423 12410, 13988, 14348, 14631, 13100, 13415, 13224, 12268,
1424 11982, 13825, 13499, 14210, 13877, 14788, 13811, 13109,
1425 11449, 13275, 12833, 13717, 12728, 13696, 12759, 12405,
1426 10230, 12185, 11628, 13161, 11762, 13458, 12312, 12818,
1427 10443, 12773, 12011, 14020, 11818, 13825, 12453, 13226,
1428 10446, 13162, 11881, 14300, 12859, 16288, 13490, 15053,
1429 10155, 12820, 11519, 13973, 12041, 15081, 12635, 14198,
1430 14198, 12635, 15081, 12041, 13973, 11519, 12820, 10155,
1431 15053, 13490, 16288, 12859, 14300, 11881, 13162, 10446,
1432 13226, 12453, 13825, 11818, 14020, 12011, 12773, 10443,
1433 12818, 12312, 13458, 11762, 13161, 11628, 12185, 10230,
1434 12405, 12759, 13696, 12728, 13717, 12833, 13275, 11449,
1435 13109, 13811, 14788, 13877, 14210, 13499, 13825, 11982,
1436 12268, 13224, 13415, 13100, 14631, 14348, 13988, 12410,
1437 12053, 13204, 13227, 13170, 13832, 13879, 13380, 12174,
1441 0, 16, 20, 25, 32, 41, 51, 65,
1442 81, 103, 129, 163, 205, 259, 326, 410,
1443 516, 650, 819, 1031, 1298, 1634, 2057, 2590,
1444 3261, 4105, 5168, 6507, 8192, 10313, 12983, 16345
1448 -4041, -4018, -3998, -3977, -3954, -3930, -3906, -3879,
1449 -3852, -3825, -3795, -3764, -3731, -3699, -3666, -3631,
1450 -3594, -3555, -3513, -3468, -3420, -3372, -3321, -3268,
1451 -3212, -3153, -3090, -3021, -2944, -2863, -2772, -2676,
1452 -2565, -2445, -2328, -2202, -2072, -1941, -1808, -1660,
1453 -1508, -1348, -1185, -994, -798, -600, -374, -110,
1454 152, 447, 720, 982, 1229, 1456, 1682, 1916,
1455 2130, 2353, 2595, 2853, 3118, 3363, 3588, 3814
1459 -3091, -2386, -1871, -1425, -1021, -649, -316, -20,
1460 267, 544, 810, 1065, 1305, 1534, 1756, 1970,
1461 2171, 2359, 2536, 2700, 2854, 2996, 3133, 3263,
1462 3386, 3499, 3603, 3701, 3789, 3870, 3947, 4020
1466 -3525, -3295, -3081, -2890, -2696, -2511, -2328, -2149,
1467 -1979, -1817, -1658, -1498, -1341, -1188, -1032, -876,
1468 -721, -561, -394, -228, -54, 119, 296, 484,
1469 683, 895, 1123, 1373, 1651, 1965, 2360, 2854
1473 -1845, -1057, -522, -77, 301, 647, 975, 1285,
1474 1582, 1873, 2163, 2452, 2735, 3017, 3299, 3569
1478 -2691, -2187, -1788, -1435, -1118, -837, -571, -316,
1479 -59, 201, 470, 759, 1077, 1457, 1908, 2495
1483 -1372, -474, 133, 632, 1100, 1571, 2075, 2672
1487 -2389, -1787, -1231, -717, -239, 234, 770, 1474
1491 -1569, -864, -296, 200, 670, 1151, 1709, 2385
1495 -2200, -1608, -1062, -569, -120, 338, 863, 1621
1499 -617, 190, 802, 1483
1508 const int8_t *
s2,
const int8_t *
s3)
1514 for (i=!skip_first; i<3; i++)
1519 dest[i] = (s1[i]*v[0] + s2[i]*v[1] + s3[i]*v[2]) >> 12;
1522 dest[i] = ( s2[i]*v[1] + s3[i]*v[2]) >> 12;
1534 memcpy(target, source,
FFMIN(
BLOCKSIZE, offset)*
sizeof(*target));
1536 memcpy(target + offset, source, (
BLOCKSIZE - offset)*
sizeof(*target));
1554 buffer2[i] = coefs[i];
1556 refl[LPC_ORDER-1] = bp2[LPC_ORDER-1];
1558 if ((
unsigned) bp2[LPC_ORDER-1] + 0x1000 > 0x1fff) {
1563 for (i = LPC_ORDER-2; i >= 0; i--) {
1564 b = 0x1000-((bp2[i+1] * bp2[i+1]) >> 12);
1570 for (j=0; j <=
i; j++) {
1572 int a = bp2[j] - ((refl[i+1] * bp2[i-j]) >> 12);
1573 if((
int)(a*(
unsigned)b) != a*(int64_t)b)
1576 bp1[j] = ((bp2[j] - ((refl[i+1] * bp2[i-j]) >> 12)) * b) >> 12;
1579 if ((
unsigned) bp1[
i] + 0x1000 > 0x1fff)
1601 b1[
i] = refl[
i] << 4;
1603 for (j=0; j <
i; j++)
1604 b1[j] = ((refl[i] * b2[i-j-1]) >> 12) + b2[j];
1639 unsigned int res = 0x10000;
1643 res = (((0x1000000 - data[
i]*data[
i]) >> 12) * res) >> 12;
1648 while (res <= 0x3fff) {
1680 return (rms * energy) >> 10;
1686 unsigned int i, sum = 0;
1689 sum += data[i] * data[i];
1694 return 0x20000000 / (
ff_t_sqrt(sum) >> 8);
1698 int cba_idx,
int cb1_idx,
int cb2_idx,
1708 m[0] = (
ff_irms(buffer_a) * gval) >> 12;
1726 block, BLOCKSIZE,
LPC_ORDER, 1, 0, 0xfff))
int ff_t_sqrt(unsigned int x)
Evaluate sqrt(x << 24).
const int16_t *const ff_lpc_refl_cb[10]
must be printed separately If there s no standard function for printing the type you the WRITE_1D_FUNC_ARGV macro is a very quick way to create one See libavcodec dv_tablegen c for an example The h file This file should the initialization functions should not do and instead of the variable declarations the generated *_tables h file should be included Since that will be generated in the build the path must be i e not Makefile changes To make the automatic table creation work
static const int16_t lpc_refl_cb7[8]
int ff_celp_lp_synthesis_filter(int16_t *out, const int16_t *filter_coeffs, const int16_t *in, int buffer_length, int filter_length, int stop_on_overflow, int shift, int rounder)
LP synthesis filter.
int16_t adapt_cb[146+2]
Adaptive codebook, its size is two units bigger to avoid a buffer overflow.
#define NBLOCKS
number of subblocks within a block
static const int16_t lpc_refl_cb10[4]
unsigned int lpc_refl_rms[2]
unsigned int ff_rms(const int *data)
const uint16_t ff_cb2_base[128]
void ff_subblock_synthesis(RA144Context *ractx, const int16_t *lpc_coefs, int cba_idx, int cb1_idx, int cb2_idx, int gval, int gain)
unsigned int * lpc_coef[2]
LPC coefficients: lpc_coef[0] is the coefficients of the current frame and lpc_coef[1] of the previou...
const int8_t ff_cb1_vects[128][40]
void av_log(void *avcl, int level, const char *fmt,...)
static const uint8_t offset[127][2]
static const int16_t lpc_refl_cb8[8]
static const int16_t lpc_refl_cb1[64]
int ff_interp(RA144Context *ractx, int16_t *out, int a, int copyold, int energy)
void ff_copy_and_dup(int16_t *target, const int16_t *source, int offset)
Copy the last offset values of *source to *target.
void ff_int_to_int16(int16_t *out, const int *inp)
const int16_t ff_gain_val_tab[256][3]
static const int16_t lpc_refl_cb5[16]
static const int16_t lpc_refl_cb6[8]
#define BLOCKSIZE
subblock size in 16-bit words
void ff_eval_coefs(int *coefs, const int *refl)
Evaluate the LPC filter coefficients from the reflection coefficients.
static av_const unsigned int ff_sqrt(unsigned int a)
main external API structure.
int ff_irms(const int16_t *data)
inverse root mean square
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
static const int16_t lpc_refl_cb9[8]
static const int16_t lpc_refl_cb2[32]
synthesis window for stochastic i
int ff_eval_refl(int *refl, const int16_t *coefs, AVCodecContext *avctx)
Evaluate the reflection coefficients from the filter coefficients.
#define BUFFERSIZE
the size of the adaptive codebook
unsigned int ff_rescale_rms(unsigned int rms, unsigned int energy)
static void ff_add_wav(int16_t *dest, int n, int skip_first, int *m, const int16_t *s1, const int8_t *s2, const int8_t *s3)
const int8_t ff_cb2_vects[128][40]
const int16_t ff_energy_tab[32]
static const int16_t lpc_refl_cb3[32]
const uint8_t ff_gain_exp_tab[256]
the buffer and buffer reference mechanism is intended to as much as expensive copies of that data while still allowing the filters to produce correct results The data is stored in buffers represented by AVFilterBuffer structures They must not be accessed but through references stored in AVFilterBufferRef structures Several references can point to the same buffer
int16_t curr_sblock[50]
The current subblock padded by the last 10 values of the previous one.
static const int16_t lpc_refl_cb4[16]
uint8_t pi<< 24) CONV_FUNC_GROUP(AV_SAMPLE_FMT_FLT, float, AV_SAMPLE_FMT_U8, uint8_t,(*(const uint8_t *) pi-0x80)*(1.0f/(1<< 7))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_DBL, double, AV_SAMPLE_FMT_U8, uint8_t,(*(const uint8_t *) pi-0x80)*(1.0/(1<< 7))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_U8, uint8_t, AV_SAMPLE_FMT_S16, int16_t,(*(const int16_t *) pi >> 8)+0x80) CONV_FUNC_GROUP(AV_SAMPLE_FMT_FLT, float, AV_SAMPLE_FMT_S16, int16_t,*(const int16_t *) pi *(1.0f/(1<< 15))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_DBL, double, AV_SAMPLE_FMT_S16, int16_t,*(const int16_t *) pi *(1.0/(1<< 15))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_U8, uint8_t, AV_SAMPLE_FMT_S32, int32_t,(*(const int32_t *) pi >> 24)+0x80) CONV_FUNC_GROUP(AV_SAMPLE_FMT_FLT, float, AV_SAMPLE_FMT_S32, int32_t,*(const int32_t *) pi *(1.0f/(1U<< 31))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_DBL, double, AV_SAMPLE_FMT_S32, int32_t,*(const int32_t *) pi *(1.0/(1U<< 31))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_U8, uint8_t, AV_SAMPLE_FMT_FLT, float, av_clip_uint8(lrintf(*(const float *) pi *(1<< 7))+0x80)) CONV_FUNC_GROUP(AV_SAMPLE_FMT_S16, int16_t, AV_SAMPLE_FMT_FLT, float, av_clip_int16(lrintf(*(const float *) pi *(1<< 15)))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_S32, int32_t, AV_SAMPLE_FMT_FLT, float, av_clipl_int32(llrintf(*(const float *) pi *(1U<< 31)))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_U8, uint8_t, AV_SAMPLE_FMT_DBL, double, av_clip_uint8(lrint(*(const double *) pi *(1<< 7))+0x80)) CONV_FUNC_GROUP(AV_SAMPLE_FMT_S16, int16_t, AV_SAMPLE_FMT_DBL, double, av_clip_int16(lrint(*(const double *) pi *(1<< 15)))) CONV_FUNC_GROUP(AV_SAMPLE_FMT_S32, int32_t, AV_SAMPLE_FMT_DBL, double, av_clipl_int32(llrint(*(const double *) pi *(1U<< 31))))#define SET_CONV_FUNC_GROUP(ofmt, ifmt) static void set_generic_function(AudioConvert *ac){}void ff_audio_convert_free(AudioConvert **ac){if(!*ac) return;ff_dither_free(&(*ac) ->dc);av_freep(ac);}AudioConvert *ff_audio_convert_alloc(AVAudioResampleContext *avr, enum AVSampleFormat out_fmt, enum AVSampleFormat in_fmt, int channels, int sample_rate, int apply_map){AudioConvert *ac;int in_planar, out_planar;ac=av_mallocz(sizeof(*ac));if(!ac) return NULL;ac->avr=avr;ac->out_fmt=out_fmt;ac->in_fmt=in_fmt;ac->channels=channels;ac->apply_map=apply_map;if(avr->dither_method!=AV_RESAMPLE_DITHER_NONE &&av_get_packed_sample_fmt(out_fmt)==AV_SAMPLE_FMT_S16 &&av_get_bytes_per_sample(in_fmt) > 2){ac->dc=ff_dither_alloc(avr, out_fmt, in_fmt, channels, sample_rate, apply_map);if(!ac->dc){av_free(ac);return NULL;}return ac;}in_planar=av_sample_fmt_is_planar(in_fmt);out_planar=av_sample_fmt_is_planar(out_fmt);if(in_planar==out_planar){ac->func_type=CONV_FUNC_TYPE_FLAT;ac->planes=in_planar?ac->channels:1;}else if(in_planar) ac->func_type=CONV_FUNC_TYPE_INTERLEAVE;else ac->func_type=CONV_FUNC_TYPE_DEINTERLEAVE;set_generic_function(ac);if(ARCH_ARM) ff_audio_convert_init_arm(ac);if(ARCH_X86) ff_audio_convert_init_x86(ac);return ac;}int ff_audio_convert(AudioConvert *ac, AudioData *out, AudioData *in){int use_generic=1;int len=in->nb_samples;int p;if(ac->dc){av_dlog(ac->avr,"%d samples - audio_convert: %s to %s (dithered)\n", len, av_get_sample_fmt_name(ac->in_fmt), av_get_sample_fmt_name(ac->out_fmt));return ff_convert_dither(ac-> out
const uint16_t ff_cb1_base[128]
#define FFSWAP(type, a, b)