105 {
106 const int32_t f0 = f.m_fe[0];
107 const int32_t f1 = f.m_fe[1];
108 const int32_t f2 = f.m_fe[2];
109 const int32_t f3 = f.m_fe[3];
110 const int32_t f4 = f.m_fe[4];
111 const int32_t f5 = f.m_fe[5];
112 const int32_t f6 = f.m_fe[6];
113 const int32_t f7 = f.m_fe[7];
114 const int32_t f8 = f.m_fe[8];
115 const int32_t f9 = f.m_fe[9];
116
117 const int32_t g0 = g.m_fe[0];
118 const int32_t g1 = g.m_fe[1];
119 const int32_t g2 = g.m_fe[2];
120 const int32_t g3 = g.m_fe[3];
121 const int32_t g4 = g.m_fe[4];
122 const int32_t g5 = g.m_fe[5];
123 const int32_t g6 = g.m_fe[6];
124 const int32_t g7 = g.m_fe[7];
125 const int32_t g8 = g.m_fe[8];
126 const int32_t g9 = g.m_fe[9];
127
128 const int32_t g1_19 = 19 * g1;
129 const int32_t g2_19 = 19 * g2;
130 const int32_t g3_19 = 19 * g3;
131 const int32_t g4_19 = 19 * g4;
132 const int32_t g5_19 = 19 * g5;
133 const int32_t g6_19 = 19 * g6;
134 const int32_t g7_19 = 19 * g7;
135 const int32_t g8_19 = 19 * g8;
136 const int32_t g9_19 = 19 * g9;
137 const int32_t f1_2 = 2 * f1;
138 const int32_t f3_2 = 2 * f3;
139 const int32_t f5_2 = 2 * f5;
140 const int32_t f7_2 = 2 * f7;
141 const int32_t f9_2 = 2 * f9;
142
143 const int64_t f0g0 = f0 * static_cast<int64_t>(g0);
144 const int64_t f0g1 = f0 * static_cast<int64_t>(g1);
145 const int64_t f0g2 = f0 * static_cast<int64_t>(g2);
146 const int64_t f0g3 = f0 * static_cast<int64_t>(g3);
147 const int64_t f0g4 = f0 * static_cast<int64_t>(g4);
148 const int64_t f0g5 = f0 * static_cast<int64_t>(g5);
149 const int64_t f0g6 = f0 * static_cast<int64_t>(g6);
150 const int64_t f0g7 = f0 * static_cast<int64_t>(g7);
151 const int64_t f0g8 = f0 * static_cast<int64_t>(g8);
152 const int64_t f0g9 = f0 * static_cast<int64_t>(g9);
153 const int64_t f1g0 = f1 * static_cast<int64_t>(g0);
154 const int64_t f1g1_2 = f1_2 * static_cast<int64_t>(g1);
155 const int64_t f1g2 = f1 * static_cast<int64_t>(g2);
156 const int64_t f1g3_2 = f1_2 * static_cast<int64_t>(g3);
157 const int64_t f1g4 = f1 * static_cast<int64_t>(g4);
158 const int64_t f1g5_2 = f1_2 * static_cast<int64_t>(g5);
159 const int64_t f1g6 = f1 * static_cast<int64_t>(g6);
160 const int64_t f1g7_2 = f1_2 * static_cast<int64_t>(g7);
161 const int64_t f1g8 = f1 * static_cast<int64_t>(g8);
162 const int64_t f1g9_38 = f1_2 * static_cast<int64_t>(g9_19);
163 const int64_t f2g0 = f2 * static_cast<int64_t>(g0);
164 const int64_t f2g1 = f2 * static_cast<int64_t>(g1);
165 const int64_t f2g2 = f2 * static_cast<int64_t>(g2);
166 const int64_t f2g3 = f2 * static_cast<int64_t>(g3);
167 const int64_t f2g4 = f2 * static_cast<int64_t>(g4);
168 const int64_t f2g5 = f2 * static_cast<int64_t>(g5);
169 const int64_t f2g6 = f2 * static_cast<int64_t>(g6);
170 const int64_t f2g7 = f2 * static_cast<int64_t>(g7);
171 const int64_t f2g8_19 = f2 * static_cast<int64_t>(g8_19);
172 const int64_t f2g9_19 = f2 * static_cast<int64_t>(g9_19);
173 const int64_t f3g0 = f3 * static_cast<int64_t>(g0);
174 const int64_t f3g1_2 = f3_2 * static_cast<int64_t>(g1);
175 const int64_t f3g2 = f3 * static_cast<int64_t>(g2);
176 const int64_t f3g3_2 = f3_2 * static_cast<int64_t>(g3);
177 const int64_t f3g4 = f3 * static_cast<int64_t>(g4);
178 const int64_t f3g5_2 = f3_2 * static_cast<int64_t>(g5);
179 const int64_t f3g6 = f3 * static_cast<int64_t>(g6);
180 const int64_t f3g7_38 = f3_2 * static_cast<int64_t>(g7_19);
181 const int64_t f3g8_19 = f3 * static_cast<int64_t>(g8_19);
182 const int64_t f3g9_38 = f3_2 * static_cast<int64_t>(g9_19);
183 const int64_t f4g0 = f4 * static_cast<int64_t>(g0);
184 const int64_t f4g1 = f4 * static_cast<int64_t>(g1);
185 const int64_t f4g2 = f4 * static_cast<int64_t>(g2);
186 const int64_t f4g3 = f4 * static_cast<int64_t>(g3);
187 const int64_t f4g4 = f4 * static_cast<int64_t>(g4);
188 const int64_t f4g5 = f4 * static_cast<int64_t>(g5);
189 const int64_t f4g6_19 = f4 * static_cast<int64_t>(g6_19);
190 const int64_t f4g7_19 = f4 * static_cast<int64_t>(g7_19);
191 const int64_t f4g8_19 = f4 * static_cast<int64_t>(g8_19);
192 const int64_t f4g9_19 = f4 * static_cast<int64_t>(g9_19);
193 const int64_t f5g0 = f5 * static_cast<int64_t>(g0);
194 const int64_t f5g1_2 = f5_2 * static_cast<int64_t>(g1);
195 const int64_t f5g2 = f5 * static_cast<int64_t>(g2);
196 const int64_t f5g3_2 = f5_2 * static_cast<int64_t>(g3);
197 const int64_t f5g4 = f5 * static_cast<int64_t>(g4);
198 const int64_t f5g5_38 = f5_2 * static_cast<int64_t>(g5_19);
199 const int64_t f5g6_19 = f5 * static_cast<int64_t>(g6_19);
200 const int64_t f5g7_38 = f5_2 * static_cast<int64_t>(g7_19);
201 const int64_t f5g8_19 = f5 * static_cast<int64_t>(g8_19);
202 const int64_t f5g9_38 = f5_2 * static_cast<int64_t>(g9_19);
203 const int64_t f6g0 = f6 * static_cast<int64_t>(g0);
204 const int64_t f6g1 = f6 * static_cast<int64_t>(g1);
205 const int64_t f6g2 = f6 * static_cast<int64_t>(g2);
206 const int64_t f6g3 = f6 * static_cast<int64_t>(g3);
207 const int64_t f6g4_19 = f6 * static_cast<int64_t>(g4_19);
208 const int64_t f6g5_19 = f6 * static_cast<int64_t>(g5_19);
209 const int64_t f6g6_19 = f6 * static_cast<int64_t>(g6_19);
210 const int64_t f6g7_19 = f6 * static_cast<int64_t>(g7_19);
211 const int64_t f6g8_19 = f6 * static_cast<int64_t>(g8_19);
212 const int64_t f6g9_19 = f6 * static_cast<int64_t>(g9_19);
213 const int64_t f7g0 = f7 * static_cast<int64_t>(g0);
214 const int64_t f7g1_2 = f7_2 * static_cast<int64_t>(g1);
215 const int64_t f7g2 = f7 * static_cast<int64_t>(g2);
216 const int64_t f7g3_38 = f7_2 * static_cast<int64_t>(g3_19);
217 const int64_t f7g4_19 = f7 * static_cast<int64_t>(g4_19);
218 const int64_t f7g5_38 = f7_2 * static_cast<int64_t>(g5_19);
219 const int64_t f7g6_19 = f7 * static_cast<int64_t>(g6_19);
220 const int64_t f7g7_38 = f7_2 * static_cast<int64_t>(g7_19);
221 const int64_t f7g8_19 = f7 * static_cast<int64_t>(g8_19);
222 const int64_t f7g9_38 = f7_2 * static_cast<int64_t>(g9_19);
223 const int64_t f8g0 = f8 * static_cast<int64_t>(g0);
224 const int64_t f8g1 = f8 * static_cast<int64_t>(g1);
225 const int64_t f8g2_19 = f8 * static_cast<int64_t>(g2_19);
226 const int64_t f8g3_19 = f8 * static_cast<int64_t>(g3_19);
227 const int64_t f8g4_19 = f8 * static_cast<int64_t>(g4_19);
228 const int64_t f8g5_19 = f8 * static_cast<int64_t>(g5_19);
229 const int64_t f8g6_19 = f8 * static_cast<int64_t>(g6_19);
230 const int64_t f8g7_19 = f8 * static_cast<int64_t>(g7_19);
231 const int64_t f8g8_19 = f8 * static_cast<int64_t>(g8_19);
232 const int64_t f8g9_19 = f8 * static_cast<int64_t>(g9_19);
233 const int64_t f9g0 = f9 * static_cast<int64_t>(g0);
234 const int64_t f9g1_38 = f9_2 * static_cast<int64_t>(g1_19);
235 const int64_t f9g2_19 = f9 * static_cast<int64_t>(g2_19);
236 const int64_t f9g3_38 = f9_2 * static_cast<int64_t>(g3_19);
237 const int64_t f9g4_19 = f9 * static_cast<int64_t>(g4_19);
238 const int64_t f9g5_38 = f9_2 * static_cast<int64_t>(g5_19);
239 const int64_t f9g6_19 = f9 * static_cast<int64_t>(g6_19);
240 const int64_t f9g7_38 = f9_2 * static_cast<int64_t>(g7_19);
241 const int64_t f9g8_19 = f9 * static_cast<int64_t>(g8_19);
242 const int64_t f9g9_38 = f9_2 * static_cast<int64_t>(g9_19);
243
244 int64_t h0 = f0g0 + f1g9_38 + f2g8_19 + f3g7_38 + f4g6_19 + f5g5_38 + f6g4_19 + f7g3_38 + f8g2_19 + f9g1_38;
245 int64_t h1 = f0g1 + f1g0 + f2g9_19 + f3g8_19 + f4g7_19 + f5g6_19 + f6g5_19 + f7g4_19 + f8g3_19 + f9g2_19;
246 int64_t h2 = f0g2 + f1g1_2 + f2g0 + f3g9_38 + f4g8_19 + f5g7_38 + f6g6_19 + f7g5_38 + f8g4_19 + f9g3_38;
247 int64_t h3 = f0g3 + f1g2 + f2g1 + f3g0 + f4g9_19 + f5g8_19 + f6g7_19 + f7g6_19 + f8g5_19 + f9g4_19;
248 int64_t h4 = f0g4 + f1g3_2 + f2g2 + f3g1_2 + f4g0 + f5g9_38 + f6g8_19 + f7g7_38 + f8g6_19 + f9g5_38;
249 int64_t h5 = f0g5 + f1g4 + f2g3 + f3g2 + f4g1 + f5g0 + f6g9_19 + f7g8_19 + f8g7_19 + f9g6_19;
250 int64_t h6 = f0g6 + f1g5_2 + f2g4 + f3g3_2 + f4g2 + f5g1_2 + f6g0 + f7g9_38 + f8g8_19 + f9g7_38;
251 int64_t h7 = f0g7 + f1g6 + f2g5 + f3g4 + f4g3 + f5g2 + f6g1 + f7g0 + f8g9_19 + f9g8_19;
252 int64_t h8 = f0g8 + f1g7_2 + f2g6 + f3g5_2 + f4g4 + f5g3_2 + f6g2 + f7g1_2 + f8g0 + f9g9_38;
253 int64_t h9 = f0g9 + f1g8 + f2g7 + f3g6 + f4g5 + f5g4 + f6g3 + f7g2 + f8g1 + f9g0;
254
255
256
257
258
259
260
263
264
265
266
267
268
271
272
273
274
275
276
279
280
281
282
283
286
287
288
289
290
293
294
295
296
297
299
300
301
302
304
305
306
308}