1 /*This file is automatically generated from a Keras model*/
2 
3 #ifdef HAVE_CONFIG_H
4 #include "config.h"
5 #endif
6 
7 #include "mlp.h"
8 
9 static const opus_int8 layer0_weights[800] = {
10    21, -8, -5, 3, -16, 13, 3, -24,
11    -18, 14, 9, 2, 5, -2, 2, -3,
12    -5, 35, 10, 10, -8, 2, 1, 3,
13    -26, -61, 9, 4, -8, 18, 3, -5,
14    47, -34, -6, 35, 35, 30, 40, -40,
15    11, -39, 11, -14, 14, -24, -8, -8,
16    2, -23, -100, 1, 19, -14, 4, 7,
17    13, -26, 47, -4, 44, 5, 27, -1,
18    57, -1, -36, 34, -20, -60, 25, -73,
19    24, -70, 20, -4, -6, 68, -16, 13,
20    -24, 40, -42, -18, 0, 10, 12, -56,
21    -6, 38, 21, 5, -116, 19, 11, -14,
22    3, 26, 14, 23, 1, 35, -16, -2,
23    -4, 55, 23, 16, 22, 45, -71, -27,
24    -20, 8, -47, -47, -46, -14, -50, -82,
25    36, 45, 54, -32, -6, 14, -2, -24,
26    3, 23, -27, -8, 1, 70, 15, -4,
27    -7, 21, 17, -126, 5, -47, -53, -6,
28    34, 25, -1, 10, 17, -37, 38, -1,
29    30, 25, -35, 112, -21, 8, -10, -3,
30    15, 18, -14, -8, -20, 11, 24, 37,
31    -35, 50, 52, 16, 9, 15, -26, 43,
32    -3, -9, -26, 126, 7, 33, 55, -88,
33    9, 28, 5, -19, -76, 32, 3, 11,
34    10, -54, 2, -13, 3, 94, 52, 106,
35    26, 74, 44, -99, 58, -44, 50, 15,
36    29, 25, 50, -84, 28, 1, -30, 11,
37    8, 20, -67, 4, 11, -25, -39, -33,
38    -83, -15, -9, 18, -2, -24, 18, 77,
39    -39, -80, 25, -8, 52, -88, -21, 81,
40    29, -23, -31, 69, -28, 0, 12, 47,
41    15, 20, 34, -53, 5, 111, -39, -7,
42    1, 56, 6, 3, 7, -67, -6, -31,
43    107, -6, 12, -97, 36, -18, -34, -6,
44    -9, -63, 10, -9, 3, 12, -80, -87,
45    17, -9, 39, 126, 13, 15, 19, -6,
46    29, 11, 10, -30, 26, -54, 31, -47,
47    25, -40, -24, 23, 16, -27, -32, 30,
48    -22, -59, -9, 65, -86, -21, 120, -25,
49    -52, -12, 34, -50, 25, -17, 30, -4,
50    95, 4, 9, 61, 25, -6, 11, -33,
51    -8, -3, 26, 37, -28, 19, -17, 36,
52    11, -8, 8, -89, 2, -68, -95, 18,
53    22, 36, 9, -8, -48, 54, -26, -6,
54    30, -28, 10, -18, 2, -11, 7, 2,
55    17, -5, 27, -21, 9, 15, 10, -18,
56    -10, 0, -9, 19, 10, -48, -35, -32,
57    15, 24, 25, -6, 3, 51, -15, 9,
58    19, -17, 6, 8, -9, 13, 14, -31,
59    -24, 10, -23, 21, 16, 18, -8, 35,
60    18, -18, -18, -26, 25, 10, 55, 9,
61    3, -24, -15, 2, -28, 20, -45, -14,
62    15, -19, -8, 10, 6, 40, -31, -45,
63    40, 53, 40, 27, -15, -31, -30, 10,
64    38, 50, 28, 71, -21, 20, 1, 23,
65    22, 14, 5, -48, 39, 78, -7, -6,
66    9, 50, 88, -15, 55, 36, 32, -22,
67    -60, 13, 31, -36, -71, -2, 52, 37,
68    7, 46, -23, -43, 19, -49, -34, 15,
69    60, -66, 36, 2, -57, -32, 64, -53,
70    -36, 49, -10, 21, -2, 23, -21, 22,
71    -3, -15, -6, 18, -12, -32, -11, -11,
72    -32, 24, 36, 37, -7, 30, -22, -12,
73    22, -63, 26, 20, -16, -30, -13, -18,
74    -10, 45, 10, -24, -2, -26, 28, 18,
75    36, 44, -40, -5, -14, -4, 18, -18,
76    -1, 18, -40, 15, 29, 15, 12, 3,
77    25, -51, 8, -17, 9, -19, 22, -33,
78    -22, 39, 61, -15, 55, -24, 10, 32,
79    12, 9, 29, 5, -33, -33, 5, 0,
80    35, 105, -14, 39, 4, 43, 36, 52,
81    50, -39, 45, -51, 27, 7, 65, -34,
82    108, 127, 42, 26, 73, 19, 9, 17,
83    -62, 16, 11, 52, 85, -46, 10, -95,
84    64, 53, 90, -8, -54, -5, -77, -45,
85    127, -4, 54, -3, -19, 66, 40, -127,
86    53, 22, -26, 24, 20, -36, -2, 101,
87    1, 35, -1, -8, 5, -36, -16, 33,
88    6, -73, -21, -23, -32, -21, -4, -46,
89    -42, -66, -16, -8, 0, -20, -21, 37,
90    -128, -128, -127, 126, -128, -127, 127, -3,
91    127, 122, 127, 126, -127, -128, 127, -127,
92    127, -124, 126, -126, -127, -128, 125, -127,
93    -38, -123, 125, -128, -128, 126, 125, 127,
94    -127, -123, -127, 127, -73, -113, 127, -17,
95    127, 126, 127, 126, -126, -126, 127, -127,
96    127, -125, 121, -126, -25, -127, 127, -126,
97    26, -126, 71, -28, -128, 20, 20, 71,
98    -87, -93, 39, 116, 111, -85, 70, -26,
99    62, 23, -15, 18, 4, 32, 114, -55,
100    8, -116, 85, -67, -110, -49, 11, -5,
101    -128, -41, 61, 70, -29, 115, 127, 51,
102    127, 127, 127, -128, -127, 127, -128, -127,
103    -126, -128, -126, -127, 127, 126, -128, 127,
104    -126, 125, -55, 127, 127, 127, -125, 115,
105    -128, -126, -128, -127, 127, -128, -128, 127,
106    28, -127, -120, -127, 127, -127, -127, 9,
107    -26, -118, 73, 39, 124, 78, -126, 123,
108    10, -127, -105, -64, 118, -84, -127, 61,
109    77, 104, -128, -127, 94, -17, -28, 36
110 };
111 
112 static const opus_int8 layer0_bias[32] = {
113    -39, 28, -7, -12, -36, -35, -49, 48,
114    38, -17, 44, 15, -45, -18, -45, 9,
115    11, 4, -25, 38, 12, -31, -90, -70,
116    -17, 27, 7, -73, 42, -103, 78, 99
117 };
118 
119 static const opus_int8 layer1_weights[2304] = {
120    29, -37, -21, -34, 19, -32, 44, -43,
121    51, -5, -14, 37, -32, 74, 127, -29,
122    -75, -49, -5, -106, -64, 24, -11, 26,
123    23, 25, -6, -1, -48, -16, -26, 29,
124    24, -3, 50, -23, -45, -59, -11, -10,
125    -9, 51, 42, 16, -27, -79, 72, 7,
126    55, -15, 5, -15, -24, -1, 48, -29,
127    -44, 26, -20, -40, 57, -15, 21, 45,
128    -4, -25, 13, 24, -26, 12, -2, 20,
129    48, -60, 45, 37, 74, 27, 13, 0,
130    126, 5, 68, 110, 7, 74, 51, 65,
131    -21, 32, 27, -30, 11, -3, -43, 73,
132    31, 43, 119, -51, 13, -80, 32, -23,
133    37, 69, 101, -33, -35, 50, -47, 126,
134    -84, 64, 88, 28, 57, 56, -28, -102,
135    0, -15, -57, 1, -34, 25, 59, 36,
136    -11, 26, -42, 14, -4, -24, -37, 63,
137    -18, 2, -32, -9, -37, -15, -9, 9,
138    -41, -36, 105, 20, 14, -14, 64, 92,
139    68, -83, -7, 20, 86, 22, 38, 8,
140    -63, -6, -13, -56, 61, 55, 50, -33,
141    -9, 22, -22, 77, 44, -33, 44, -20,
142    77, 33, 34, -78, -53, 31, -108, 33,
143    -23, -54, 63, 34, -9, 43, -17, 15,
144    -15, 15, -3, -50, 15, -26, -6, -35,
145    -52, 57, 0, -10, 67, -57, -47, 36,
146    -64, 19, -19, -29, -97, -15, -49, 69,
147    -18, 84, 122, 4, -81, 18, -85, -4,
148    -40, 99, -46, 11, -10, -29, -51, -59,
149    112, -103, 29, -45, 5, 43, 94, 24,
150    -4, -37, 27, -54, -24, 30, 43, 40,
151    -10, 13, 18, 75, 51, 11, -14, -7,
152    34, 80, -119, 73, -47, -68, 50, 79,
153    42, -2, -53, 22, -9, -21, -4, 88,
154    97, -5, -28, 16, -64, -1, -25, 9,
155    -20, -63, 10, 57, -3, 127, -2, -26,
156    8, 66, -48, -118, 47, -73, 15, 51,
157    -29, 28, 72, 41, -2, 48, 75, -24,
158    -47, 44, 8, -39, 70, -73, -44, 56,
159    -14, -62, 30, 74, 31, -98, 13, 8,
160    83, -36, -7, -8, 62, 13, -29, -20,
161    21, -66, 53, -49, -24, -14, 19, 101,
162    -47, -51, 65, -52, 25, -32, -38, 39,
163    -56, 41, 49, 22, 10, 21, 1, 38,
164    -18, 48, 36, 55, -39, -10, -4, 3,
165    17, -27, -81, 61, 1, 8, -32, 35,
166    29, 85, -33, -56, 16, 3, -48, 35,
167    56, -40, 14, -65, 3, -70, -29, 84,
168    51, 75, -52, 56, -55, 0, -13, -58,
169    6, 3, 22, 31, -34, 20, -6, 26,
170    -121, 85, -75, 11, -34, -23, 46, -11,
171    0, 9, 20, 39, 59, -12, 38, 14,
172    6, -33, -15, -86, 39, -48, -5, 4,
173    29, -28, 52, -8, -51, 52, 60, -11,
174    -22, 81, 81, 17, -127, -28, 27, -40,
175    -36, -57, 43, 52, 51, -38, -10, 23,
176    -44, -72, -63, 3, 20, -68, -72, -38,
177    26, -45, 19, -75, -18, 4, 14, 15,
178    -47, 104, -9, 51, 25, 16, -95, 64,
179    -11, -2, -5, 39, 52, -40, 77, 44,
180    11, -29, -37, 5, -58, -38, -28, 36,
181    50, 2, -26, -3, -16, -11, -11, 16,
182    -14, -47, -3, -3, -48, 45, 40, -14,
183    3, -67, -4, 19, -25, 14, -34, 48,
184    -66, 67, 70, 20, 52, -21, 21, 28,
185    16, 70, -114, -11, 29, 9, -52, -52,
186    -39, 44, 17, 11, -15, -111, 84, -20,
187    -23, -60, 15, -39, 48, 10, -31, -24,
188    -38, 4, -42, -25, -70, -3, -75, -40,
189    -3, -19, 33, -14, 18, -14, -5, -16,
190    46, -56, 38, -1, 2, 9, 17, -41,
191    -44, 11, -23, 28, -32, 8, -1, 57,
192    -5, 44, -64, -21, -54, 47, 22, -19,
193    -12, -24, -48, -4, -42, -46, -17, 52,
194    -39, -33, 79, -26, 20, 21, 9, -5,
195    -127, -31, 26, -86, -20, -115, 27, 33,
196    33, 72, 30, 57, -17, 2, 71, 58,
197    -52, -10, 20, -79, -3, 40, -106, 17,
198    34, 68, -17, 31, -27, 23, 17, 18,
199    21, 25, 15, 41, -51, 30, -3, 1,
200    -4, -60, -13, -59, 53, -42, -34, -29,
201    -22, -50, 27, -70, -58, -21, -59, -27,
202    -28, 45, -66, 12, 85, -61, 0, -39,
203    -73, -75, -29, -42, -47, -88, -46, 27,
204    -43, 112, 83, -51, -36, -64, 13, 74,
205    -9, 2, 25, 38, -18, -64, -81, -23,
206    -12, 40, 18, -38, -121, -36, -6, -73,
207    -16, -59, 28, -26, -2, -69, -6, -7,
208    43, -21, 61, 0, 1, 0, 13, 18,
209    -18, -21, -3, 18, 42, 0, 67, -35,
210    39, 15, -97, -87, 103, 65, 86, 20,
211    -11, -17, 9, -9, 15, 15, -35, 52,
212    34, -105, -85, 10, -36, -68, -64, 60,
213    -85, 51, -54, -39, -19, 77, 0, 35,
214    -20, 35, -78, 41, -11, 49, 14, 17,
215    -31, 1, 41, -1, 10, -25, -90, -12,
216    -9, -12, -26, 6, 34, 22, 31, 25,
217    6, 27, -26, 5, -35, 29, 18, -12,
218    54, -42, -22, -14, -6, 36, -14, -16,
219    35, 69, 75, 7, -113, 44, -2, -18,
220    3, -15, 50, -28, -36, -9, -25, 47,
221    127, -6, -35, 35, -46, 17, 116, -62,
222    -17, -98, -105, 77, -99, -17, 41, 16,
223    -7, 17, -89, 37, -16, -72, -3, -29,
224    50, 30, -43, -7, -72, 125, 51, 59,
225    -73, 37, 61, 2, -19, -11, 4, 46,
226    33, 51, 74, 88, -51, 68, 124, 27,
227    97, -51, 16, -3, -6, -12, -30, 28,
228    33, 3, -59, 22, 72, 53, 24, -29,
229    -4, -65, 89, -59, 92, 121, 12, 11,
230    111, -20, 12, -85, -123, -33, -65, 70,
231    68, 127, 2, -25, -104, 57, -74, -94,
232    -128, -27, 28, -7, -126, -123, -2, -57,
233    -57, 76, 55, -43, -44, -92, 1, 29,
234    12, 10, 15, 10, 88, 0, -65, -57,
235    -66, 14, -10, -10, 36, 19, -49, -4,
236    33, 3, 99, -49, -28, 41, 21, 37,
237    46, 62, 16, 43, -58, 119, -32, 34,
238    27, 13, -46, -1, -4, 23, 31, -21,
239    108, 4, 107, 37, 26, -48, 70, 18,
240    30, -18, -101, 77, -91, -117, -74, 16,
241    -116, 43, -24, 26, -19, -49, 34, -54,
242    101, -14, 15, 12, 80, -9, 110, 42,
243    8, -30, 53, -42, 34, -8, 60, -89,
244    7, 41, 21, -94, 51, -1, -22, -37,
245    22, 12, 49, -1, 55, 30, 5, -26,
246    -12, 4, -29, -16, -118, -12, -48, 85,
247    -44, -5, -27, -13, -84, -39, -63, -83,
248    44, 5, -62, -52, -110, -8, -24, -36,
249    -22, -52, 20, -10, 42, 117, -19, -30,
250    21, -16, -38, 92, 35, -5, -7, 45,
251    -69, -57, -69, 20, 18, 14, 107, -36,
252    -37, 43, 25, -38, -44, -104, 46, 8,
253    93, -9, 54, 39, -48, -28, 21, 2,
254    24, 11, -5, -14, -2, -10, 28, 105,
255    5, -60, -65, -38, 121, 5, -33, -60,
256    44, 68, 21, -69, -9, 7, 55, -26,
257    -75, 19, -76, 0, 10, -101, -56, -64,
258    19, -68, 14, 19, 9, -49, 23, -1,
259    19, -52, -15, -67, -63, -18, 24, -40,
260    -44, -11, -6, 43, 62, 67, -27, 5,
261    -57, 6, 25, -14, 19, 53, 24, -29,
262    -64, -26, -50, -19, 28, -15, -29, -56,
263    6, -40, 35, 54, -6, -45, -17, 41,
264    106, -42, -47, 43, -22, 20, -2, -126,
265    -29, 72, 85, -32, -30, 43, -6, 14,
266    31, -84, 4, 7, 16, -47, -37, -33,
267    -14, -60, -52, -55, -44, 41, 39, -114,
268    -52, 24, -100, 55, -6, 40, 102, 48,
269    -1, 55, -55, -35, -27, 51, -1, 6,
270    -10, -16, -38, 29, 37, 55, 18, 22,
271    28, -58, 13, 60, -60, 18, 6, -8,
272    31, -52, 14, 2, 16, 30, -22, -39,
273    0, 35, -29, 7, -48, 41, 78, 24,
274    30, 1, -89, 72, 27, -33, -33, -12,
275    61, -82, 123, 36, -12, -25, 55, 37,
276    66, 27, -19, 37, 10, 44, -14, -17,
277    -20, 30, 20, 2, 21, 15, 37, 35,
278    3, -40, 6, 12, 4, 22, -21, -79,
279    29, 3, -55, -77, -31, 13, -19, -24,
280    10, -38, 9, -78, 24, -50, -15, 31,
281    30, -4, -33, 25, 27, 10, -24, 43,
282    -7, 78, -2, 27, 69, -23, 10, 79,
283    -19, -69, -3, 6, 25, 71, -42, -4,
284    -10, -21, -43, 18, 63, 6, 15, -41,
285    -7, 77, 37, -47, -7, 41, -34, 40,
286    6, 25, 25, -74, -32, 4, 43, -26,
287    -8, 44, -5, 39, -4, -12, -9, -90,
288    -51, 38, 32, 42, 28, -42, 13, 4,
289    30, 18, 54, -13, -11, 3, -2, 58,
290    30, -53, 5, -76, 4, -14, -13, 16,
291    10, -108, 6, -114, 28, -93, -65, -40,
292    21, 28, -31, -85, -52, 29, 9, -10,
293    -12, -26, -27, -82, 43, 0, -75, -6,
294    29, -4, 64, -12, -5, 25, 14, -2,
295    -54, -127, 81, -35, 14, -59, -75, 69,
296    -29, -65, 43, -88, -21, 34, -87, -48,
297    51, 2, 8, -37, 25, 10, -25, -7,
298    -37, -39, -8, 28, 55, -72, -26, 16,
299    -30, 41, -49, 32, 37, -7, -12, 23,
300    38, -61, -13, 28, 16, 4, -16, -122,
301    37, 8, 17, 3, -79, 23, -17, 28,
302    -28, -31, -14, -39, 114, -49, -15, -47,
303    -14, 7, -7, -79, 98, -72, 19, -26,
304    65, -44, -60, -56, 18, -20, -35, 19,
305    -72, 8, 78, -84, 40, -3, 46, 40,
306    3, -31, 16, 38, -58, 48, 34, 0,
307    -75, -25, -12, -25, -5, -15, 18, -11,
308    6, 34, 20, 21, -6, -19, -34, 22,
309    -18, -48, 69, 122, -16, 1, 12, 11,
310    80, 31, 28, -34, 23, 27, -19, 10,
311    63, 81, 66, 91, 10, 2, 123, 126,
312    126, 74, 21, 75, 9, -15, 36, 29,
313    34, -54, 101, -57, -51, -61, 47, 66,
314    41, 38, -124, 56, -36, 48, 51, -7,
315    -11, -6, 30, -55, 48, 3, -18, -20,
316    24, 24, 0, -55, 62, 3, -74, -49,
317    2, -13, -31, -3, -12, 42, -33, 5,
318    -24, -39, 117, -81, -31, -39, 0, 2,
319    6, 25, 77, 13, 6, 10, 26, -21,
320    -127, 35, 7, -26, -69, -19, -21, -25,
321    111, -34, -3, 29, 6, -31, -44, 73,
322    -1, 6, -4, 2, 99, 25, 92, 34,
323    40, 5, -94, 21, 47, 126, 61, -5,
324    2, -37, 4, 21, -27, 32, -18, -10,
325    70, -40, -15, 38, 19, 30, 12, -19,
326    -11, -2, -50, 22, -33, 3, 33, -39,
327    -19, 87, -67, -27, -11, -117, 36, 104,
328    11, -56, -29, -6, 5, 14, -5, 44,
329    38, 9, 24, 16, 127, 47, -6, -9,
330    63, -58, -106, -19, 62, -30, 29, -23,
331    69, 4, -31, 3, 14, -101, 5, 3,
332    31, -6, -88, 28, 13, 0, 42, 0,
333    6, 60, 54, -11, 5, -34, -33, -24,
334    -5, 42, 19, -63, 10, 32, -9, -32,
335    25, 26, -28, -5, -7, -45, 32, 11,
336    -12, 31, -26, -33, -46, -76, 40, -5,
337    3, -5, 3, -18, -12, 93, 17, 62,
338    -121, -14, 42, 76, 24, 4, 34, 14,
339    41, 18, -10, 93, 91, -62, 58, -55,
340    88, -64, -9, 23, 25, 45, -2, 70,
341    43, 9, 103, 22, 48, 46, -13, 9,
342    -27, -37, 35, -51, -54, -10, 57, -35,
343    -2, -1, 7, -3, -37, 5, 9, 3,
344    27, -7, 50, 5, -50, 22, 21, -13,
345    22, 43, 10, -18, 37, -20, -38, -32,
346    -2, 27, 1, -67, -41, 60, -28, -33,
347    -50, -38, 76, -18, 23, -16, -25, 0,
348    -8, -71, -10, -12, 20, -34, 40, -19,
349    12, -42, 14, 11, -28, 37, -33, 4,
350    41, 19, 65, 85, -26, 23, -50, 38,
351    3, -34, 64, 43, 1, 16, 34, 35,
352    -15, -27, 20, -1, 50, 0, -30, -50,
353    14, -60, -69, 10, -57, -45, -32, -14,
354    32, -16, 46, -61, -46, 1, -40, -75,
355    -28, -16, -73, -50, -13, -14, 9, -78,
356    5, -44, -9, -25, -79, -16, -46, 92,
357    -70, 61, -20, 12, -43, 3, -19, 40,
358    11, 25, 32, -58, 58, 45, 28, 1,
359    13, -27, -53, 30, -30, -31, -52, 10,
360    17, 68, -6, -44, -8, 25, 33, 48,
361    81, -43, -10, 67, 29, 23, 11, 20,
362    -39, -28, 31, 18, -72, 29, 22, -11,
363    -71, 39, -10, -121, -20, -8, -40, 125,
364    -7, -43, 10, 49, 12, 38, 43, -79,
365    -72, -41, -48, -60, -41, 5, -17, 35,
366    95, 35, 124, -11, 2, 70, -60, -25,
367    0, -27, 76, -19, -94, 40, -96, 65,
368    -9, -31, -8, -35, 27, -44, 64, -60,
369    -12, -72, 12, -56, 8, -45, -5, -27,
370    -6, 50, 30, -20, -18, 64, -108, -15,
371    -43, 44, 11, -14, -8, -21, -24, 42,
372    51, 47, -3, 17, -17, -24, 33, -28,
373    25, -15, -33, -21, 6, -13, 39, 19,
374    7, 116, 37, 53, 105, 4, 15, -56,
375    10, 12, -92, -30, 117, 4, 32, -13,
376    -17, -21, 43, 29, -25, -38, 51, 32,
377    74, -41, -15, 29, -5, -114, 35, -36,
378    46, 51, 15, 16, -39, 24, 17, 3,
379    -26, 40, -37, 34, 43, 20, -61, -14,
380    31, -29, 34, 25, -22, 25, -39, 39,
381    -33, -10, -56, -61, -6, -48, -114, -96,
382    -12, 3, 82, 45, 8, -2, -4, -28,
383    -42, -58, -50, -34, -54, -26, -64, -16,
384    -82, 49, -28, 0, -30, -20, -64, -68,
385    -18, 18, -44, -34, -42, -61, -17, 14,
386    -28, 8, 27, -49, -18, 45, -41, 11,
387    -2, 10, -8, -17, -24, -28, -42, 12,
388    79, 46, 30, -26, 5, 3, 3, 58,
389    12, -73, 23, 17, 5, 2, 20, 36,
390    56, -33, 80, 71, 17, 87, 40, -21,
391    26, 6, 48, -71, 76, 15, -47, 32,
392    87, 30, 58, -11, 65, -43, 91, 54,
393    -31, 8, 34, 25, -14, 37, -30, 20,
394    -35, 4, -75, 56, -29, 22, 64, 48,
395    47, -78, -74, 22, 11, -62, -28, 62,
396    -30, 12, -25, -31, 41, -42, 22, 23,
397    -8, -20, 38, 21, -6, 52, 23, 5,
398    -20, 32, 3, 16, 26, 50, 3, -4,
399    48, -77, -3, -4, 21, 23, 30, 11,
400    -1, 9, -56, -100, 39, 5, -25, 35,
401    95, 44, 22, 75, 19, -20, 126, -31,
402    -8, -24, 37, 35, -32, -4, 20, 47,
403    7, -84, 2, 10, 7, 7, 75, -64,
404    46, 36, -77, -1, -38, -19, -52, 39,
405    26, 41, 82, 38, 67, 62, -6, -25,
406    -16, -35, -5, -14, 32, 15, -3, -38,
407    28, 43, -59, 7, 58, 26, -63, -56
408 };
409 
410 static const opus_int8 layer1_recur_weights[1728] = {
411    -41, 5, 25, 16, -9, 22, 19, 19,
412    -16, 56, -32, 68, 95, 62, 124, 81,
413    30, 112, -24, 30, -12, 104, 49, 24,
414    -10, 33, 31, 38, 10, 71, -16, 29,
415    13, 14, 38, -7, 79, -25, -35, 6,
416    9, -90, -16, -109, -49, 35, -15, -127,
417    85, 12, -6, 16, 27, 26, 82, 10,
418    -79, -36, 42, -88, 50, -26, -7, -87,
419    127, 19, -96, -75, -3, 6, 8, -4,
420    84, -30, -26, 70, -9, -123, -13, -2,
421    64, -125, -49, -99, 126, 67, 94, -20,
422    54, 110, -15, -48, -91, -1, 64, 4,
423    31, -1, 52, -55, 16, 52, 21, 127,
424    -124, 10, 31, 127, 41, -53, 68, 40,
425    16, 48, -19, -69, -16, -100, -29, -97,
426    -2, 47, -16, 40, 80, 60, 82, -18,
427    -42, 15, -43, 42, 123, -28, 38, 18,
428    35, -8, 38, -119, 103, 33, 9, -25,
429    120, -110, -50, -30, 2, -67, -42, -33,
430    -85, 38, 59, -55, 71, 97, -29, -64,
431    14, 32, 1, -128, -26, -121, -33, -8,
432    2, -65, 22, 85, -55, -57, 17, 37,
433    2, -78, 28, -54, 17, -31, 31, 26,
434    -8, 25, 23, -52, -15, -58, -18, 4,
435    -23, -27, 4, 5, -85, 34, 29, -1,
436    -80, -8, 1, 22, -32, 22, -27, 95,
437    -55, -70, -127, -46, -58, -7, 38, -4,
438    127, -14, -7, 71, 62, 43, -57, -54,
439    60, -58, -28, -43, -50, 127, 101, 15,
440    25, 49, -53, 17, -81, -60, 83, -32,
441    46, 57, -59, 19, 49, -12, -109, 20,
442    -19, -50, -7, 14, 79, 59, -30, -57,
443    -5, -60, 13, 5, 85, -33, -89, 9,
444    127, 13, -38, 127, 57, 99, 14, -26,
445    -105, 3, -38, -77, 41, -19, 28, -31,
446    23, -88, -22, -60, -29, 14, -84, 9,
447    8, -1, -21, 49, 58, 15, -4, -6,
448    100, -9, -26, -54, 94, 84, 25, 25,
449    27, 49, -1, 0, -104, -5, 33, -10,
450    40, 54, 15, 62, -1, -39, -54, 18,
451    41, 15, -17, -84, -29, 31, -10, -65,
452    -47, 1, -66, -17, -43, 34, 5, -61,
453    94, 107, 37, 55, 46, 57, 63, -66,
454    -14, 13, -82, 7, 10, -11, 72, 123,
455    102, 1, -112, -71, 121, 56, -24, -24,
456    127, 5, -24, -49, 104, -27, 56, -15,
457    2, 76, 107, 24, 83, 86, 90, 45,
458    116, 124, 48, 29, 102, 36, 10, 55,
459    29, -29, 12, -84, -18, -50, -8, 17,
460    -28, -52, -64, -3, 118, 54, 51, 45,
461    -59, 47, -1, -35, 22, -10, 12, -79,
462    -24, 4, 60, 92, -67, 125, -90, 29,
463    -48, 64, -104, 23, -12, -51, -53, -37,
464    -66, 21, 113, 75, 37, 9, -20, 0,
465    5, -75, 32, 60, 12, 35, -68, -16,
466    48, -22, 40, -19, 40, 77, -51, 63,
467    23, 85, 8, 9, -41, -59, 98, 9,
468    -24, -48, 47, 4, 48, 48, 4, 91,
469    -69, 21, 21, 70, 22, 15, 57, 111,
470    -64, -18, -8, 49, 43, -26, 7, -82,
471    111, -21, 1, -52, 59, -82, 106, 5,
472    -5, -45, 35, -15, -2, 57, 62, 57,
473    68, -6, -27, -51, 50, 60, -21, -12,
474    -127, 34, 89, -117, -59, -83, -76, 80,
475    -59, -29, 56, -18, 27, -70, -67, 46,
476    -92, -87, 12, -116, 71, -72, 4, -51,
477    -64, 70, 6, -104, -67, 42, 3, -5,
478    98, 41, -20, -1, 64, -32, -58, 51,
479    -69, -126, 46, -21, -75, -27, -52, 52,
480    -12, -17, 28, -1, -7, -21, -3, 88,
481    68, 7, 3, 67, -7, 59, 33, 25,
482    -4, -45, -38, 46, 72, -24, -92, -25,
483    -108, 43, -35, -90, 3, -6, 22, -80,
484    91, -35, 111, 8, -54, 21, -125, 31,
485    -77, -121, -17, -56, -18, -125, -126, 36,
486    -24, 35, 1, 0, 25, -20, 14, 12,
487    3, 90, -87, 17, -54, -60, -58, -9,
488    22, -35, 32, 12, 5, 17, -92, 3,
489    8, -54, -128, -22, -75, -41, -22, 127,
490    73, -9, -6, 12, -71, 106, -54, 120,
491    -17, -51, 94, 13, -24, -67, -7, 35,
492    -69, 27, -48, -77, 56, -60, -48, 64,
493    38, 88, -20, 20, -123, 42, -91, 55,
494    -98, -41, 78, -107, 120, -82, -91, 17,
495    21, 31, 7, 31, 67, 32, -42, -9,
496    126, 49, -41, -103, -66, -8, -32, -64,
497    18, -56, 25, -14, 35, 35, -29, -18,
498    -49, 2, 75, -46, -86, 47, -71, -14,
499    18, 28, 15, 40, 33, -18, -45, 60,
500    -52, 3, 43, 61, -115, -52, -1, 21,
501    -28, 27, 17, -33, -125, 29, -9, 126,
502    91, 37, -37, 106, -39, 61, -122, 5,
503    -125, -123, 23, 35, -22, 12, 81, 20,
504    -36, 76, 34, 63, 53, -64, 46, 24,
505    41, 122, -22, 61, -14, -21, 10, 94,
506    27, -27, 78, 3, 2, 15, 14, 20,
507    -3, -15, -11, -128, -35, -58, 8, -43,
508    83, -26, 48, 44, 8, -14, -10, 56,
509    -48, 12, -39, -40, -17, 66, 69, 33,
510    -34, -16, -32, 48, -86, 2, 21, 2,
511    51, 31, -39, 57, -20, 16, -24, 66,
512    65, -6, 64, -13, 2, 73, -85, -7,
513    -127, -53, 49, -68, -44, 26, 79, -6,
514    78, 17, -34, 45, 33, 16, 17, 56,
515    -76, 28, 44, 12, 15, 35, 21, 66,
516    -47, 53, 27, -13, 13, -30, 55, -31,
517    67, -63, -4, 51, -40, 49, 51, 14,
518    -38, -62, -49, 50, 26, 3, -16, -39,
519    42, 7, 30, -27, 108, -73, -29, -6,
520    29, 42, 19, -77, -40, -17, 57, -19,
521    90, 70, -72, -40, -30, 65, 84, -4,
522    2, 9, 33, -73, 73, 81, 8, -21,
523    -22, -57, -5, -58, -32, 14, 34, 10,
524    38, 7, 41, 0, -25, 38, 3, -125,
525    62, -25, -20, 13, 20, 14, -9, -27,
526    13, 31, -128, -85, 72, -63, -49, -18,
527    81, 47, 37, 63, -10, -10, -66, 4,
528    -116, 53, 14, 49, 6, 37, 38, -4,
529    -47, 64, 15, 0, -110, -19, 45, 7,
530    -37, 20, 21, 22, 51, 17, -39, 71,
531    -59, -1, -35, -8, -73, -106, -30, 5,
532    -68, -18, -36, 35, -21, -17, -1, 4,
533    -24, -28, 5, 4, 11, -50, 27, 84,
534    -16, -60, -86, -12, -31, -8, 43, 52,
535    94, 14, 29, 46, -34, 6, -2, 51,
536    -36, -56, -9, -48, -8, 26, 78, 3,
537    -31, -46, 25, 14, -8, -9, -47, 1,
538    -23, 65, 42, -5, 104, 96, -70, 18,
539    -69, 84, -2, -28, -19, -35, 5, -49,
540    -88, -117, 9, 82, -71, -58, 33, 82,
541    17, 40, -93, 32, 5, 21, 38, -23,
542    -77, -40, 48, -8, -10, 22, -27, -47,
543    -49, 46, 67, -17, 81, -61, 92, 54,
544    8, -71, 127, 23, -61, 51, 13, 32,
545    -35, -52, -32, -4, -47, 20, 0, -62,
546    -126, 3, -17, -127, 18, -70, 11, -29,
547    -87, -27, -19, -13, -9, -128, -26, 69,
548    -67, -29, 66, 49, 1, -119, -73, -7,
549    -55, -9, 48, -45, -27, 26, 57, 12,
550    9, 51, -98, -14, -21, -37, 88, 23,
551    -37, 65, -11, 69, -7, -34, 16, 33,
552    36, 94, 56, 5, 63, -38, 25, -55,
553    -81, -74, 21, 30, -4, -16, 52, 37,
554    4, 8, -48, 8, 127, -75, -56, -79,
555    -76, 61, 17, -27, -63, -56, -53, 39,
556    -109, -50, -77, -7, -100, -88, 23, -108,
557    -120, 120, -87, -122, -87, 36, 63, -65,
558    3, -32, 84, 55, 71, 126, 10, 37,
559    29, 16, 45, 40, 75, -5, 40, -105,
560    -7, -15, -25, 12, -78, 46, -9, -114,
561    90, 50, -41, -23, 6, -58, 75, 19,
562    62, -33, -38, -24, 66, 22, 66, -4,
563    124, 29, -55, -29, 42, -17, -123, -79,
564    -8, -3, -2, 19, 59, -33, -39, 41,
565    51, 0, 45, -15, 67, 8, -42, 2,
566    -20, -49, 95, -32, 5, -56, 37, 21,
567    -11, -18, -8, 53, 17, 43, 14, 81,
568    -90, -40, 69, -33, 59, 28, -8, 44,
569    47, -11, -26, -92, 31, 86, 12, -39,
570    9, -28, -22, -6, -42, -4, -23, 6,
571    -57, 109, -46, -12, 10, -77, -66, -24,
572    -26, 119, 78, 43, -17, -14, -45, 73,
573    -4, 13, -44, -78, 26, -64, -60, -99,
574    -104, 31, -16, -93, -64, 48, -17, 108,
575    -71, 12, 34, -63, 24, 14, -28, -48,
576    1, 94, -29, -27, 2, -5, -53, 18,
577    56, 91, -19, -28, 45, -38, -55, -106,
578    -10, 41, 49, -38, -4, 1, -84, -37,
579    -77, 4, -66, 19, 56, 41, -82, 114,
580    97, -50, 83, -38, 31, -126, -22, -94,
581    -86, 44, 37, 35, 11, 60, 49, 3,
582    26, 18, 124, -64, 50, -72, 17, -80,
583    16, 30, 113, 34, -19, 32, 63, -30,
584    95, -88, 55, 126, 127, 107, 49, 83,
585    -17, -75, 1, -107, 27, 20, 115, 31,
586    57, -11, -36, 41, 91, 31, 58, -38,
587    -12, 4, 39, 38, 37, 13, -73, 33,
588    11, 43, 35, 23, -86, 36, -10, 19,
589    34, -10, -35, -8, 47, -105, -60, 75,
590    -25, 127, 14, 106, 81, -9, -46, 21,
591    35, 42, -6, 3, 118, 78, 37, 33,
592    22, 98, 46, 50, -23, 81, 122, 18,
593    30, 64, 105, 101, -116, -33, -66, 18,
594    -59, -99, -125, -79, 19, 127, 120, -98,
595    13, 27, 32, 26, 3, 20, 120, 10,
596    29, 91, 51, 78, 28, -61, 34, -12,
597    54, -19, 51, -17, 29, 56, 53, -124,
598    -10, -97, 9, -10, -9, 2, 9, 33,
599    33, 44, -47, 36, 52, -54, 63, 88,
600    -11, 70, 68, 113, 11, 127, 65, 88,
601    126, -12, 28, 81, 57, 123, 71, 26,
602    5, 117, 16, 16, -9, 92, 50, -35,
603    27, 27, -47, 39, 46, 13, 19, 61,
604    106, 74, -31, 52, 94, 22, -40, -72,
605    57, 10, 45, 25, 5, -5, 36, -7,
606    -43, 40, 40, -81, -36, -47, 8, -18,
607    63, 31, -48, 58, -49, -19, 25, -5,
608    63, -76, 9, -2, 1, 127, 19, -24,
609    32, 36, 23, 25, -49, 104, 13, 3,
610    75, 12, -31, 38, 122, 20, 49, 35,
611    -14, 16, 44, 101, -12, 119, 50, -48,
612    -7, -11, 15, -103, -9, -39, 4, -54,
613    -67, 32, 30, 47, 40, 60, 9, -17,
614    -31, 47, 13, 127, -21, -4, 50, 28,
615    34, -4, -72, -24, -2, -41, 3, 26,
616    -34, -90, 82, 1, -83, 47, 40, -8,
617    -4, 4, -65, -10, 115, 43, 104, 42,
618    32, 85, -78, 12, 59, 71, 113, 42,
619    -20, 50, -29, 61, 6, 104, 74, 65,
620    -73, 12, 93, 77, 21, 24, -14, 84,
621    58, 105, 37, 37, 85, -53, 76, -95,
622    26, -17, -51, -64, -75, -19, -1, 27,
623    25, -49, 46, 73, 19, -13, -98, -8,
624    1, -37, -69, -81, 28, 2, 7, -40,
625    -47, 55, 29, 53, 33, 103, -53, -15,
626    19, -9, 7, 120, -21, 28, 27, 13
627 };
628 
629 static const opus_int8 layer1_bias[72] = {
630    47, 0, -35, 34, 104, 95, 120, -3,
631    -5, 105, -41, 79, -27, 122, 46, 89,
632    89, 34, 71, 94, 70, 68, 79, 18,
633    44, 25, -15, -22, 18, -22, 9, -14,
634    -45, 5, 1, 20, 38, 22, 15, 24,
635    28, -14, -2, 10, 8, -27, -18, -46,
636    -5, 34, -43, -33, 12, 13, 0, 0,
637    9, -47, 28, 14, -18, 17, 8, 10,
638    -38, -23, -20, -11, 59, 45, 76, 24
639 };
640 
641 static const opus_int8 layer2_weights[48] = {
642    122, -51, 118, -67, -23, -128, 126, -124,
643    127, 12, 2, -68, 117, -80, 3, 127,
644    71, 127, -128, -83, -15, 93, 13, 40,
645    27, -127, 65, 101, 84, 16, 85, 117,
646    127, -120, -59, -55, -128, -51, -128, -65,
647    127, 1, 99, 127, -60, 127, -128, 50
648 };
649 
650 static const opus_int8 layer2_bias[2] = {
651    34, 115
652 };
653 
654 const DenseLayer layer0 = {
655    layer0_bias,
656    layer0_weights,
657    25, 32, 0
658 };
659 
660 const GRULayer layer1 = {
661    layer1_bias,
662    layer1_weights,
663    layer1_recur_weights,
664    32, 24
665 };
666 
667 const DenseLayer layer2 = {
668    layer2_bias,
669    layer2_weights,
670    24, 2, 1
671 };
672 
673