xref: /aosp_15_r20/external/XNNPACK/models/fp32-mobilenet-v3-large.cc (revision 4bdc94577ba0e567308109d787f7fec7b531ce36)
1 // Copyright 2020 Google LLC
2 //
3 // This source code is licensed under the BSD-style license found in the
4 // LICENSE file in the root directory of this source tree.
5 
6 #include <xnnpack.h>
7 
8 #include <array>
9 #include <algorithm>
10 #include <functional>
11 #include <iostream>
12 #include <limits>
13 #include <random>
14 
15 #include <xnnpack/cache.h>
16 
17 #include "models/models.h"
18 
19 namespace models {
20 
FP32MobileNetV3Large(pthreadpool_t threadpool)21 ExecutionPlan FP32MobileNetV3Large(pthreadpool_t threadpool) {
22   alignas(16) static std::array<float, 150528 + XNN_EXTRA_BYTES / sizeof(float)> v0;
23   alignas(16) static std::array<float, 200704> v1;
24   alignas(16) static std::array<float, 200704> v2;
25   alignas(16) static std::array<float, 200704> v3;
26   alignas(16) static std::array<float, 200704> v4;
27   alignas(16) static std::array<float, 200704> v5;
28   alignas(16) static std::array<float, 802816> v6;
29   alignas(16) static std::array<float, 200704> v7;
30   alignas(16) static std::array<float, 75264> v8;
31   alignas(16) static std::array<float, 225792> v9;
32   alignas(16) static std::array<float, 225792> v10;
33   alignas(16) static std::array<float, 75264> v11;
34   alignas(16) static std::array<float, 75264> v12;
35   alignas(16) static std::array<float, 225792> v13;
36   alignas(16) static std::array<float, 56448> v14;
37   alignas(16) static std::array<float, 72> v15;
38   alignas(16) static std::array<float, 24> v16;
39   alignas(16) static std::array<float, 72> v17;
40   alignas(16) static std::array<float, 56448> v18;
41   alignas(16) static std::array<float, 31360> v19;
42   alignas(16) static std::array<float, 94080> v20;
43   alignas(16) static std::array<float, 94080> v21;
44   alignas(16) static std::array<float, 120> v22;
45   alignas(16) static std::array<float, 32> v23;
46   alignas(16) static std::array<float, 120> v24;
47   alignas(16) static std::array<float, 94080> v25;
48   alignas(16) static std::array<float, 31360> v26;
49   alignas(16) static std::array<float, 31360> v27;
50   alignas(16) static std::array<float, 94080> v28;
51   alignas(16) static std::array<float, 94080> v29;
52   alignas(16) static std::array<float, 120> v30;
53   alignas(16) static std::array<float, 32> v31;
54   alignas(16) static std::array<float, 120> v32;
55   alignas(16) static std::array<float, 94080> v33;
56   alignas(16) static std::array<float, 31360> v34;
57   alignas(16) static std::array<float, 31360> v35;
58   alignas(16) static std::array<float, 188160> v36;
59   alignas(16) static std::array<float, 188160> v37;
60   alignas(16) static std::array<float, 47040> v38;
61   alignas(16) static std::array<float, 47040> v39;
62   alignas(16) static std::array<float, 15680> v40;
63   alignas(16) static std::array<float, 39200> v41;
64   alignas(16) static std::array<float, 39200> v42;
65   alignas(16) static std::array<float, 39200> v43;
66   alignas(16) static std::array<float, 39200> v44;
67   alignas(16) static std::array<float, 15680> v45;
68   alignas(16) static std::array<float, 15680> v46;
69   alignas(16) static std::array<float, 36064> v47;
70   alignas(16) static std::array<float, 36064> v48;
71   alignas(16) static std::array<float, 36064> v49;
72   alignas(16) static std::array<float, 36064> v50;
73   alignas(16) static std::array<float, 15680> v51;
74   alignas(16) static std::array<float, 15680> v52;
75   alignas(16) static std::array<float, 36064> v53;
76   alignas(16) static std::array<float, 36064> v54;
77   alignas(16) static std::array<float, 36064> v55;
78   alignas(16) static std::array<float, 36064> v56;
79   alignas(16) static std::array<float, 15680> v57;
80   alignas(16) static std::array<float, 15680> v58;
81   alignas(16) static std::array<float, 94080> v59;
82   alignas(16) static std::array<float, 94080> v60;
83   alignas(16) static std::array<float, 94080> v61;
84   alignas(16) static std::array<float, 94080> v62;
85   alignas(16) static std::array<float, 480> v63;
86   alignas(16) static std::array<float, 120> v64;
87   alignas(16) static std::array<float, 480> v65;
88   alignas(16) static std::array<float, 94080> v66;
89   alignas(16) static std::array<float, 21952> v67;
90   alignas(16) static std::array<float, 131712> v68;
91   alignas(16) static std::array<float, 131712> v69;
92   alignas(16) static std::array<float, 131712> v70;
93   alignas(16) static std::array<float, 131712> v71;
94   alignas(16) static std::array<float, 672> v72;
95   alignas(16) static std::array<float, 168> v73;
96   alignas(16) static std::array<float, 672> v74;
97   alignas(16) static std::array<float, 131712> v75;
98   alignas(16) static std::array<float, 21952> v76;
99   alignas(16) static std::array<float, 21952> v77;
100   alignas(16) static std::array<float, 131712> v78;
101   alignas(16) static std::array<float, 131712> v79;
102   alignas(16) static std::array<float, 32928> v80;
103   alignas(16) static std::array<float, 32928> v81;
104   alignas(16) static std::array<float, 672> v82;
105   alignas(16) static std::array<float, 168> v83;
106   alignas(16) static std::array<float, 672> v84;
107   alignas(16) static std::array<float, 32928> v85;
108   alignas(16) static std::array<float, 7840> v86;
109   alignas(16) static std::array<float, 47040> v87;
110   alignas(16) static std::array<float, 47040> v88;
111   alignas(16) static std::array<float, 47040> v89;
112   alignas(16) static std::array<float, 47040> v90;
113   alignas(16) static std::array<float, 960> v91;
114   alignas(16) static std::array<float, 240> v92;
115   alignas(16) static std::array<float, 960> v93;
116   alignas(16) static std::array<float, 47040> v94;
117   alignas(16) static std::array<float, 7840> v95;
118   alignas(16) static std::array<float, 7840> v96;
119   alignas(16) static std::array<float, 47040> v97;
120   alignas(16) static std::array<float, 47040> v98;
121   alignas(16) static std::array<float, 47040> v99;
122   alignas(16) static std::array<float, 47040> v100;
123   alignas(16) static std::array<float, 960> v101;
124   alignas(16) static std::array<float, 240> v102;
125   alignas(16) static std::array<float, 960> v103;
126   alignas(16) static std::array<float, 47040> v104;
127   alignas(16) static std::array<float, 7840> v105;
128   alignas(16) static std::array<float, 7840> v106;
129   alignas(16) static std::array<float, 47040> v107;
130   alignas(16) static std::array<float, 47040> v108;
131   alignas(16) static std::array<float, 960> v109;
132   alignas(16) static std::array<float, 1280> v110;
133   alignas(16) static std::array<float, 1280> v111;
134   alignas(16) static std::array<float, 1280> v112;
135   alignas(16) static std::array<float, 1001> v113;
136   alignas(16) static std::array<float, 432> w114;
137   alignas(16) static std::array<float, 16> w115;
138   alignas(16) static std::array<float, 144> w116;
139   alignas(16) static std::array<float, 16> w117;
140   alignas(16) static std::array<float, 256> w118;
141   alignas(16) static std::array<float, 16> w119;
142   alignas(16) static std::array<float, 1024> w120;
143   alignas(16) static std::array<float, 64> w121;
144   alignas(16) static std::array<float, 576> w122;
145   alignas(16) static std::array<float, 64> w123;
146   alignas(16) static std::array<float, 1536> w124;
147   alignas(16) static std::array<float, 24> w125;
148   alignas(16) static std::array<float, 1728> w126;
149   alignas(16) static std::array<float, 72> w127;
150   alignas(16) static std::array<float, 648> w128;
151   alignas(16) static std::array<float, 72> w129;
152   alignas(16) static std::array<float, 1728> w130;
153   alignas(16) static std::array<float, 24> w131;
154   alignas(16) static std::array<float, 1728> w132;
155   alignas(16) static std::array<float, 72> w133;
156   alignas(16) static std::array<float, 1800> w134;
157   alignas(16) static std::array<float, 72> w135;
158   alignas(16) static std::array<float, 1728> w136;
159   alignas(16) static std::array<float, 24> w137;
160   alignas(16) static std::array<float, 1728> w138;
161   alignas(16) static std::array<float, 72> w139;
162   alignas(16) static std::array<float, 2880> w140;
163   alignas(16) static std::array<float, 40> w141;
164   alignas(16) static std::array<float, 4800> w142;
165   alignas(16) static std::array<float, 120> w143;
166   alignas(16) static std::array<float, 3000> w144;
167   alignas(16) static std::array<float, 120> w145;
168   alignas(16) static std::array<float, 3840> w146;
169   alignas(16) static std::array<float, 32> w147;
170   alignas(16) static std::array<float, 3840> w148;
171   alignas(16) static std::array<float, 120> w149;
172   alignas(16) static std::array<float, 4800> w150;
173   alignas(16) static std::array<float, 40> w151;
174   alignas(16) static std::array<float, 4800> w152;
175   alignas(16) static std::array<float, 120> w153;
176   alignas(16) static std::array<float, 3000> w154;
177   alignas(16) static std::array<float, 120> w155;
178   alignas(16) static std::array<float, 3840> w156;
179   alignas(16) static std::array<float, 32> w157;
180   alignas(16) static std::array<float, 3840> w158;
181   alignas(16) static std::array<float, 120> w159;
182   alignas(16) static std::array<float, 4800> w160;
183   alignas(16) static std::array<float, 40> w161;
184   alignas(16) static std::array<float, 9600> w162;
185   alignas(16) static std::array<float, 240> w163;
186   alignas(16) static std::array<float, 2160> w164;
187   alignas(16) static std::array<float, 240> w165;
188   alignas(16) static std::array<float, 19200> w166;
189   alignas(16) static std::array<float, 80> w167;
190   alignas(16) static std::array<float, 16000> w168;
191   alignas(16) static std::array<float, 200> w169;
192   alignas(16) static std::array<float, 1800> w170;
193   alignas(16) static std::array<float, 200> w171;
194   alignas(16) static std::array<float, 16000> w172;
195   alignas(16) static std::array<float, 80> w173;
196   alignas(16) static std::array<float, 14720> w174;
197   alignas(16) static std::array<float, 184> w175;
198   alignas(16) static std::array<float, 1656> w176;
199   alignas(16) static std::array<float, 184> w177;
200   alignas(16) static std::array<float, 14720> w178;
201   alignas(16) static std::array<float, 80> w179;
202   alignas(16) static std::array<float, 14720> w180;
203   alignas(16) static std::array<float, 184> w181;
204   alignas(16) static std::array<float, 1656> w182;
205   alignas(16) static std::array<float, 184> w183;
206   alignas(16) static std::array<float, 14720> w184;
207   alignas(16) static std::array<float, 80> w185;
208   alignas(16) static std::array<float, 38400> w186;
209   alignas(16) static std::array<float, 480> w187;
210   alignas(16) static std::array<float, 4320> w188;
211   alignas(16) static std::array<float, 480> w189;
212   alignas(16) static std::array<float, 57600> w190;
213   alignas(16) static std::array<float, 120> w191;
214   alignas(16) static std::array<float, 57600> w192;
215   alignas(16) static std::array<float, 480> w193;
216   alignas(16) static std::array<float, 53760> w194;
217   alignas(16) static std::array<float, 112> w195;
218   alignas(16) static std::array<float, 75264> w196;
219   alignas(16) static std::array<float, 672> w197;
220   alignas(16) static std::array<float, 6048> w198;
221   alignas(16) static std::array<float, 672> w199;
222   alignas(16) static std::array<float, 112896> w200;
223   alignas(16) static std::array<float, 168> w201;
224   alignas(16) static std::array<float, 112896> w202;
225   alignas(16) static std::array<float, 672> w203;
226   alignas(16) static std::array<float, 75264> w204;
227   alignas(16) static std::array<float, 112> w205;
228   alignas(16) static std::array<float, 75264> w206;
229   alignas(16) static std::array<float, 672> w207;
230   alignas(16) static std::array<float, 16800> w208;
231   alignas(16) static std::array<float, 672> w209;
232   alignas(16) static std::array<float, 112896> w210;
233   alignas(16) static std::array<float, 168> w211;
234   alignas(16) static std::array<float, 112896> w212;
235   alignas(16) static std::array<float, 672> w213;
236   alignas(16) static std::array<float, 107520> w214;
237   alignas(16) static std::array<float, 160> w215;
238   alignas(16) static std::array<float, 153600> w216;
239   alignas(16) static std::array<float, 960> w217;
240   alignas(16) static std::array<float, 24000> w218;
241   alignas(16) static std::array<float, 960> w219;
242   alignas(16) static std::array<float, 230400> w220;
243   alignas(16) static std::array<float, 240> w221;
244   alignas(16) static std::array<float, 230400> w222;
245   alignas(16) static std::array<float, 960> w223;
246   alignas(16) static std::array<float, 153600> w224;
247   alignas(16) static std::array<float, 160> w225;
248   alignas(16) static std::array<float, 153600> w226;
249   alignas(16) static std::array<float, 960> w227;
250   alignas(16) static std::array<float, 24000> w228;
251   alignas(16) static std::array<float, 960> w229;
252   alignas(16) static std::array<float, 230400> w230;
253   alignas(16) static std::array<float, 240> w231;
254   alignas(16) static std::array<float, 230400> w232;
255   alignas(16) static std::array<float, 960> w233;
256   alignas(16) static std::array<float, 153600> w234;
257   alignas(16) static std::array<float, 160> w235;
258   alignas(16) static std::array<float, 153600> w236;
259   alignas(16) static std::array<float, 960> w237;
260   alignas(16) static std::array<float, 1228800> w238;
261   alignas(16) static std::array<float, 1280> w239;
262   alignas(16) static std::array<float, 1281280> w240;
263   alignas(16) static std::array<float, 1001> w241;
264 
265   std::random_device random_device;
266   auto rng = std::mt19937(random_device());
267   auto f32rng = std::bind(std::uniform_real_distribution<float>(-1.0f, +1.0f), std::ref(rng));
268   std::generate(v0.begin(), v0.end(), std::ref(f32rng));
269   std::generate(v1.begin(), v1.end(), std::ref(f32rng));
270   std::generate(v2.begin(), v2.end(), std::ref(f32rng));
271   std::generate(v3.begin(), v3.end(), std::ref(f32rng));
272   std::generate(v4.begin(), v4.end(), std::ref(f32rng));
273   std::generate(v5.begin(), v5.end(), std::ref(f32rng));
274   std::generate(v6.begin(), v6.end(), std::ref(f32rng));
275   std::generate(v7.begin(), v7.end(), std::ref(f32rng));
276   std::generate(v8.begin(), v8.end(), std::ref(f32rng));
277   std::generate(v9.begin(), v9.end(), std::ref(f32rng));
278   std::generate(v10.begin(), v10.end(), std::ref(f32rng));
279   std::generate(v11.begin(), v11.end(), std::ref(f32rng));
280   std::generate(v12.begin(), v12.end(), std::ref(f32rng));
281   std::generate(v13.begin(), v13.end(), std::ref(f32rng));
282   std::generate(v14.begin(), v14.end(), std::ref(f32rng));
283   std::generate(v15.begin(), v15.end(), std::ref(f32rng));
284   std::generate(v16.begin(), v16.end(), std::ref(f32rng));
285   std::generate(v17.begin(), v17.end(), std::ref(f32rng));
286   std::generate(v18.begin(), v18.end(), std::ref(f32rng));
287   std::generate(v19.begin(), v19.end(), std::ref(f32rng));
288   std::generate(v20.begin(), v20.end(), std::ref(f32rng));
289   std::generate(v21.begin(), v21.end(), std::ref(f32rng));
290   std::generate(v22.begin(), v22.end(), std::ref(f32rng));
291   std::generate(v23.begin(), v23.end(), std::ref(f32rng));
292   std::generate(v24.begin(), v24.end(), std::ref(f32rng));
293   std::generate(v25.begin(), v25.end(), std::ref(f32rng));
294   std::generate(v26.begin(), v26.end(), std::ref(f32rng));
295   std::generate(v27.begin(), v27.end(), std::ref(f32rng));
296   std::generate(v28.begin(), v28.end(), std::ref(f32rng));
297   std::generate(v29.begin(), v29.end(), std::ref(f32rng));
298   std::generate(v30.begin(), v30.end(), std::ref(f32rng));
299   std::generate(v31.begin(), v31.end(), std::ref(f32rng));
300   std::generate(v32.begin(), v32.end(), std::ref(f32rng));
301   std::generate(v33.begin(), v33.end(), std::ref(f32rng));
302   std::generate(v34.begin(), v34.end(), std::ref(f32rng));
303   std::generate(v35.begin(), v35.end(), std::ref(f32rng));
304   std::generate(v36.begin(), v36.end(), std::ref(f32rng));
305   std::generate(v37.begin(), v37.end(), std::ref(f32rng));
306   std::generate(v38.begin(), v38.end(), std::ref(f32rng));
307   std::generate(v39.begin(), v39.end(), std::ref(f32rng));
308   std::generate(v40.begin(), v40.end(), std::ref(f32rng));
309   std::generate(v41.begin(), v41.end(), std::ref(f32rng));
310   std::generate(v42.begin(), v42.end(), std::ref(f32rng));
311   std::generate(v43.begin(), v43.end(), std::ref(f32rng));
312   std::generate(v44.begin(), v44.end(), std::ref(f32rng));
313   std::generate(v45.begin(), v45.end(), std::ref(f32rng));
314   std::generate(v46.begin(), v46.end(), std::ref(f32rng));
315   std::generate(v47.begin(), v47.end(), std::ref(f32rng));
316   std::generate(v48.begin(), v48.end(), std::ref(f32rng));
317   std::generate(v49.begin(), v49.end(), std::ref(f32rng));
318   std::generate(v50.begin(), v50.end(), std::ref(f32rng));
319   std::generate(v51.begin(), v51.end(), std::ref(f32rng));
320   std::generate(v52.begin(), v52.end(), std::ref(f32rng));
321   std::generate(v53.begin(), v53.end(), std::ref(f32rng));
322   std::generate(v54.begin(), v54.end(), std::ref(f32rng));
323   std::generate(v55.begin(), v55.end(), std::ref(f32rng));
324   std::generate(v56.begin(), v56.end(), std::ref(f32rng));
325   std::generate(v57.begin(), v57.end(), std::ref(f32rng));
326   std::generate(v58.begin(), v58.end(), std::ref(f32rng));
327   std::generate(v59.begin(), v59.end(), std::ref(f32rng));
328   std::generate(v60.begin(), v60.end(), std::ref(f32rng));
329   std::generate(v61.begin(), v61.end(), std::ref(f32rng));
330   std::generate(v62.begin(), v62.end(), std::ref(f32rng));
331   std::generate(v63.begin(), v63.end(), std::ref(f32rng));
332   std::generate(v64.begin(), v64.end(), std::ref(f32rng));
333   std::generate(v65.begin(), v65.end(), std::ref(f32rng));
334   std::generate(v66.begin(), v66.end(), std::ref(f32rng));
335   std::generate(v67.begin(), v67.end(), std::ref(f32rng));
336   std::generate(v68.begin(), v68.end(), std::ref(f32rng));
337   std::generate(v69.begin(), v69.end(), std::ref(f32rng));
338   std::generate(v70.begin(), v70.end(), std::ref(f32rng));
339   std::generate(v71.begin(), v71.end(), std::ref(f32rng));
340   std::generate(v72.begin(), v72.end(), std::ref(f32rng));
341   std::generate(v73.begin(), v73.end(), std::ref(f32rng));
342   std::generate(v74.begin(), v74.end(), std::ref(f32rng));
343   std::generate(v75.begin(), v75.end(), std::ref(f32rng));
344   std::generate(v76.begin(), v76.end(), std::ref(f32rng));
345   std::generate(v77.begin(), v77.end(), std::ref(f32rng));
346   std::generate(v78.begin(), v78.end(), std::ref(f32rng));
347   std::generate(v79.begin(), v79.end(), std::ref(f32rng));
348   std::generate(v80.begin(), v80.end(), std::ref(f32rng));
349   std::generate(v81.begin(), v81.end(), std::ref(f32rng));
350   std::generate(v82.begin(), v82.end(), std::ref(f32rng));
351   std::generate(v83.begin(), v83.end(), std::ref(f32rng));
352   std::generate(v84.begin(), v84.end(), std::ref(f32rng));
353   std::generate(v85.begin(), v85.end(), std::ref(f32rng));
354   std::generate(v86.begin(), v86.end(), std::ref(f32rng));
355   std::generate(v87.begin(), v87.end(), std::ref(f32rng));
356   std::generate(v88.begin(), v88.end(), std::ref(f32rng));
357   std::generate(v89.begin(), v89.end(), std::ref(f32rng));
358   std::generate(v90.begin(), v90.end(), std::ref(f32rng));
359   std::generate(v91.begin(), v91.end(), std::ref(f32rng));
360   std::generate(v92.begin(), v92.end(), std::ref(f32rng));
361   std::generate(v93.begin(), v93.end(), std::ref(f32rng));
362   std::generate(v94.begin(), v94.end(), std::ref(f32rng));
363   std::generate(v95.begin(), v95.end(), std::ref(f32rng));
364   std::generate(v96.begin(), v96.end(), std::ref(f32rng));
365   std::generate(v97.begin(), v97.end(), std::ref(f32rng));
366   std::generate(v98.begin(), v98.end(), std::ref(f32rng));
367   std::generate(v99.begin(), v99.end(), std::ref(f32rng));
368   std::generate(v100.begin(), v100.end(), std::ref(f32rng));
369   std::generate(v101.begin(), v101.end(), std::ref(f32rng));
370   std::generate(v102.begin(), v102.end(), std::ref(f32rng));
371   std::generate(v103.begin(), v103.end(), std::ref(f32rng));
372   std::generate(v104.begin(), v104.end(), std::ref(f32rng));
373   std::generate(v105.begin(), v105.end(), std::ref(f32rng));
374   std::generate(v106.begin(), v106.end(), std::ref(f32rng));
375   std::generate(v107.begin(), v107.end(), std::ref(f32rng));
376   std::generate(v108.begin(), v108.end(), std::ref(f32rng));
377   std::generate(v109.begin(), v109.end(), std::ref(f32rng));
378   std::generate(v110.begin(), v110.end(), std::ref(f32rng));
379   std::generate(v111.begin(), v111.end(), std::ref(f32rng));
380   std::generate(v112.begin(), v112.end(), std::ref(f32rng));
381   std::generate(v113.begin(), v113.end(), std::ref(f32rng));
382   std::generate(w114.begin(), w114.end(), std::ref(f32rng));
383   std::generate(w115.begin(), w115.end(), std::ref(f32rng));
384   std::generate(w116.begin(), w116.end(), std::ref(f32rng));
385   std::generate(w117.begin(), w117.end(), std::ref(f32rng));
386   std::generate(w118.begin(), w118.end(), std::ref(f32rng));
387   std::generate(w119.begin(), w119.end(), std::ref(f32rng));
388   std::generate(w120.begin(), w120.end(), std::ref(f32rng));
389   std::generate(w121.begin(), w121.end(), std::ref(f32rng));
390   std::generate(w122.begin(), w122.end(), std::ref(f32rng));
391   std::generate(w123.begin(), w123.end(), std::ref(f32rng));
392   std::generate(w124.begin(), w124.end(), std::ref(f32rng));
393   std::generate(w125.begin(), w125.end(), std::ref(f32rng));
394   std::generate(w126.begin(), w126.end(), std::ref(f32rng));
395   std::generate(w127.begin(), w127.end(), std::ref(f32rng));
396   std::generate(w128.begin(), w128.end(), std::ref(f32rng));
397   std::generate(w129.begin(), w129.end(), std::ref(f32rng));
398   std::generate(w130.begin(), w130.end(), std::ref(f32rng));
399   std::generate(w131.begin(), w131.end(), std::ref(f32rng));
400   std::generate(w132.begin(), w132.end(), std::ref(f32rng));
401   std::generate(w133.begin(), w133.end(), std::ref(f32rng));
402   std::generate(w134.begin(), w134.end(), std::ref(f32rng));
403   std::generate(w135.begin(), w135.end(), std::ref(f32rng));
404   std::generate(w136.begin(), w136.end(), std::ref(f32rng));
405   std::generate(w137.begin(), w137.end(), std::ref(f32rng));
406   std::generate(w138.begin(), w138.end(), std::ref(f32rng));
407   std::generate(w139.begin(), w139.end(), std::ref(f32rng));
408   std::generate(w140.begin(), w140.end(), std::ref(f32rng));
409   std::generate(w141.begin(), w141.end(), std::ref(f32rng));
410   std::generate(w142.begin(), w142.end(), std::ref(f32rng));
411   std::generate(w143.begin(), w143.end(), std::ref(f32rng));
412   std::generate(w144.begin(), w144.end(), std::ref(f32rng));
413   std::generate(w145.begin(), w145.end(), std::ref(f32rng));
414   std::generate(w146.begin(), w146.end(), std::ref(f32rng));
415   std::generate(w147.begin(), w147.end(), std::ref(f32rng));
416   std::generate(w148.begin(), w148.end(), std::ref(f32rng));
417   std::generate(w149.begin(), w149.end(), std::ref(f32rng));
418   std::generate(w150.begin(), w150.end(), std::ref(f32rng));
419   std::generate(w151.begin(), w151.end(), std::ref(f32rng));
420   std::generate(w152.begin(), w152.end(), std::ref(f32rng));
421   std::generate(w153.begin(), w153.end(), std::ref(f32rng));
422   std::generate(w154.begin(), w154.end(), std::ref(f32rng));
423   std::generate(w155.begin(), w155.end(), std::ref(f32rng));
424   std::generate(w156.begin(), w156.end(), std::ref(f32rng));
425   std::generate(w157.begin(), w157.end(), std::ref(f32rng));
426   std::generate(w158.begin(), w158.end(), std::ref(f32rng));
427   std::generate(w159.begin(), w159.end(), std::ref(f32rng));
428   std::generate(w160.begin(), w160.end(), std::ref(f32rng));
429   std::generate(w161.begin(), w161.end(), std::ref(f32rng));
430   std::generate(w162.begin(), w162.end(), std::ref(f32rng));
431   std::generate(w163.begin(), w163.end(), std::ref(f32rng));
432   std::generate(w164.begin(), w164.end(), std::ref(f32rng));
433   std::generate(w165.begin(), w165.end(), std::ref(f32rng));
434   std::generate(w166.begin(), w166.end(), std::ref(f32rng));
435   std::generate(w167.begin(), w167.end(), std::ref(f32rng));
436   std::generate(w168.begin(), w168.end(), std::ref(f32rng));
437   std::generate(w169.begin(), w169.end(), std::ref(f32rng));
438   std::generate(w170.begin(), w170.end(), std::ref(f32rng));
439   std::generate(w171.begin(), w171.end(), std::ref(f32rng));
440   std::generate(w172.begin(), w172.end(), std::ref(f32rng));
441   std::generate(w173.begin(), w173.end(), std::ref(f32rng));
442   std::generate(w174.begin(), w174.end(), std::ref(f32rng));
443   std::generate(w175.begin(), w175.end(), std::ref(f32rng));
444   std::generate(w176.begin(), w176.end(), std::ref(f32rng));
445   std::generate(w177.begin(), w177.end(), std::ref(f32rng));
446   std::generate(w178.begin(), w178.end(), std::ref(f32rng));
447   std::generate(w179.begin(), w179.end(), std::ref(f32rng));
448   std::generate(w180.begin(), w180.end(), std::ref(f32rng));
449   std::generate(w181.begin(), w181.end(), std::ref(f32rng));
450   std::generate(w182.begin(), w182.end(), std::ref(f32rng));
451   std::generate(w183.begin(), w183.end(), std::ref(f32rng));
452   std::generate(w184.begin(), w184.end(), std::ref(f32rng));
453   std::generate(w185.begin(), w185.end(), std::ref(f32rng));
454   std::generate(w186.begin(), w186.end(), std::ref(f32rng));
455   std::generate(w187.begin(), w187.end(), std::ref(f32rng));
456   std::generate(w188.begin(), w188.end(), std::ref(f32rng));
457   std::generate(w189.begin(), w189.end(), std::ref(f32rng));
458   std::generate(w190.begin(), w190.end(), std::ref(f32rng));
459   std::generate(w191.begin(), w191.end(), std::ref(f32rng));
460   std::generate(w192.begin(), w192.end(), std::ref(f32rng));
461   std::generate(w193.begin(), w193.end(), std::ref(f32rng));
462   std::generate(w194.begin(), w194.end(), std::ref(f32rng));
463   std::generate(w195.begin(), w195.end(), std::ref(f32rng));
464   std::generate(w196.begin(), w196.end(), std::ref(f32rng));
465   std::generate(w197.begin(), w197.end(), std::ref(f32rng));
466   std::generate(w198.begin(), w198.end(), std::ref(f32rng));
467   std::generate(w199.begin(), w199.end(), std::ref(f32rng));
468   std::generate(w200.begin(), w200.end(), std::ref(f32rng));
469   std::generate(w201.begin(), w201.end(), std::ref(f32rng));
470   std::generate(w202.begin(), w202.end(), std::ref(f32rng));
471   std::generate(w203.begin(), w203.end(), std::ref(f32rng));
472   std::generate(w204.begin(), w204.end(), std::ref(f32rng));
473   std::generate(w205.begin(), w205.end(), std::ref(f32rng));
474   std::generate(w206.begin(), w206.end(), std::ref(f32rng));
475   std::generate(w207.begin(), w207.end(), std::ref(f32rng));
476   std::generate(w208.begin(), w208.end(), std::ref(f32rng));
477   std::generate(w209.begin(), w209.end(), std::ref(f32rng));
478   std::generate(w210.begin(), w210.end(), std::ref(f32rng));
479   std::generate(w211.begin(), w211.end(), std::ref(f32rng));
480   std::generate(w212.begin(), w212.end(), std::ref(f32rng));
481   std::generate(w213.begin(), w213.end(), std::ref(f32rng));
482   std::generate(w214.begin(), w214.end(), std::ref(f32rng));
483   std::generate(w215.begin(), w215.end(), std::ref(f32rng));
484   std::generate(w216.begin(), w216.end(), std::ref(f32rng));
485   std::generate(w217.begin(), w217.end(), std::ref(f32rng));
486   std::generate(w218.begin(), w218.end(), std::ref(f32rng));
487   std::generate(w219.begin(), w219.end(), std::ref(f32rng));
488   std::generate(w220.begin(), w220.end(), std::ref(f32rng));
489   std::generate(w221.begin(), w221.end(), std::ref(f32rng));
490   std::generate(w222.begin(), w222.end(), std::ref(f32rng));
491   std::generate(w223.begin(), w223.end(), std::ref(f32rng));
492   std::generate(w224.begin(), w224.end(), std::ref(f32rng));
493   std::generate(w225.begin(), w225.end(), std::ref(f32rng));
494   std::generate(w226.begin(), w226.end(), std::ref(f32rng));
495   std::generate(w227.begin(), w227.end(), std::ref(f32rng));
496   std::generate(w228.begin(), w228.end(), std::ref(f32rng));
497   std::generate(w229.begin(), w229.end(), std::ref(f32rng));
498   std::generate(w230.begin(), w230.end(), std::ref(f32rng));
499   std::generate(w231.begin(), w231.end(), std::ref(f32rng));
500   std::generate(w232.begin(), w232.end(), std::ref(f32rng));
501   std::generate(w233.begin(), w233.end(), std::ref(f32rng));
502   std::generate(w234.begin(), w234.end(), std::ref(f32rng));
503   std::generate(w235.begin(), w235.end(), std::ref(f32rng));
504   std::generate(w236.begin(), w236.end(), std::ref(f32rng));
505   std::generate(w237.begin(), w237.end(), std::ref(f32rng));
506   std::generate(w238.begin(), w238.end(), std::ref(f32rng));
507   std::generate(w239.begin(), w239.end(), std::ref(f32rng));
508   std::generate(w240.begin(), w240.end(), std::ref(f32rng));
509   std::generate(w241.begin(), w241.end(), std::ref(f32rng));
510 
511   ExecutionPlan operators;
512   xnn_status status;
513   xnn_code_cache code_cache;
514 #if XNN_PLATFORM_JIT
515   xnn_init_code_cache(&code_cache);
516 #endif
517   xnn_caches caches = { 0 };
518   caches.code_cache = &code_cache;
519 
520   xnn_operator_t op0 = nullptr;
521   status = xnn_create_convolution2d_nhwc_f32(
522     0 /* top padding */, 1 /* right padding */,
523     1 /* bottom padding */, 0 /* left padding */,
524     3 /* kernel height */, 3 /* kernel width */,
525     2 /* subsampling height */, 2 /* subsampling width */,
526     1 /* dilation_height */, 1 /* dilation_width */,
527     1 /* groups */,
528     3 /* input channels per group */,
529     16 /* output_channels_per_group */,
530     3 /* input pixel stride */,
531     16 /* output pixel stride */,
532     w114.data(), w115.data(),
533     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
534     0 /* flags */,
535     &caches,
536     &op0);
537   if (status != xnn_status_success) {
538     std::cerr << "failed to create operation #0" << std::endl;
539     return ExecutionPlan();
540   }
541   operators.emplace_back(op0, xnn_delete_operator);
542 
543   xnn_operator_t op1 = nullptr;
544   status = xnn_create_hardswish_nc_f32(
545     16 /* channels */,
546     16 /* input stride */,
547     16 /* output stride */,
548     0 /* flags */,
549     &op1);
550   if (status != xnn_status_success) {
551     std::cerr << "failed to create operation #1" << std::endl;
552     return ExecutionPlan();
553   }
554   operators.emplace_back(op1, xnn_delete_operator);
555 
556   xnn_operator_t op2 = nullptr;
557   status = xnn_create_convolution2d_nhwc_f32(
558     1 /* top padding */, 1 /* right padding */,
559     1 /* bottom padding */, 1 /* left padding */,
560     3 /* kernel height */, 3 /* kernel width */,
561     1 /* subsampling height */, 1 /* subsampling width */,
562     1 /* dilation_height */, 1 /* dilation_width */,
563     16 /* groups */,
564     1 /* input channels per group */,
565     1 /* output_channels_per_group */,
566     16 /* input pixel stride */,
567     16 /* output pixel stride */,
568     w116.data(), w117.data(),
569     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
570     0 /* flags */,
571     &caches,
572     &op2);
573   if (status != xnn_status_success) {
574     std::cerr << "failed to create operation #2" << std::endl;
575     return ExecutionPlan();
576   }
577   operators.emplace_back(op2, xnn_delete_operator);
578 
579   xnn_operator_t op3 = nullptr;
580   status = xnn_create_convolution2d_nhwc_f32(
581     0 /* top padding */, 0 /* right padding */,
582     0 /* bottom padding */, 0 /* left padding */,
583     1 /* kernel height */, 1 /* kernel width */,
584     1 /* subsampling height */, 1 /* subsampling width */,
585     1 /* dilation_height */, 1 /* dilation_width */,
586     1 /* groups */,
587     16 /* input channels per group */,
588     16 /* output_channels_per_group */,
589     16 /* input pixel stride */,
590     16 /* output pixel stride */,
591     w118.data(), w119.data(),
592     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
593     0 /* flags */,
594     &caches,
595     &op3);
596   if (status != xnn_status_success) {
597     std::cerr << "failed to create operation #3" << std::endl;
598     return ExecutionPlan();
599   }
600   operators.emplace_back(op3, xnn_delete_operator);
601 
602   xnn_operator_t op4 = nullptr;
603   status = xnn_create_add_nd_f32(
604     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
605     0 /* flags */,
606     &op4);
607   if (status != xnn_status_success) {
608     std::cerr << "failed to create operation #4" << std::endl;
609     return ExecutionPlan();
610   }
611   operators.emplace_back(op4, xnn_delete_operator);
612 
613   xnn_operator_t op5 = nullptr;
614   status = xnn_create_convolution2d_nhwc_f32(
615     0 /* top padding */, 0 /* right padding */,
616     0 /* bottom padding */, 0 /* left padding */,
617     1 /* kernel height */, 1 /* kernel width */,
618     1 /* subsampling height */, 1 /* subsampling width */,
619     1 /* dilation_height */, 1 /* dilation_width */,
620     1 /* groups */,
621     16 /* input channels per group */,
622     64 /* output_channels_per_group */,
623     16 /* input pixel stride */,
624     64 /* output pixel stride */,
625     w120.data(), w121.data(),
626     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
627     0 /* flags */,
628     &caches,
629     &op5);
630   if (status != xnn_status_success) {
631     std::cerr << "failed to create operation #5" << std::endl;
632     return ExecutionPlan();
633   }
634   operators.emplace_back(op5, xnn_delete_operator);
635 
636   xnn_operator_t op6 = nullptr;
637   status = xnn_create_convolution2d_nhwc_f32(
638     0 /* top padding */, 1 /* right padding */,
639     1 /* bottom padding */, 0 /* left padding */,
640     3 /* kernel height */, 3 /* kernel width */,
641     2 /* subsampling height */, 2 /* subsampling width */,
642     1 /* dilation_height */, 1 /* dilation_width */,
643     64 /* groups */,
644     1 /* input channels per group */,
645     1 /* output_channels_per_group */,
646     64 /* input pixel stride */,
647     64 /* output pixel stride */,
648     w122.data(), w123.data(),
649     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
650     0 /* flags */,
651     &caches,
652     &op6);
653   if (status != xnn_status_success) {
654     std::cerr << "failed to create operation #6" << std::endl;
655     return ExecutionPlan();
656   }
657   operators.emplace_back(op6, xnn_delete_operator);
658 
659   xnn_operator_t op7 = nullptr;
660   status = xnn_create_convolution2d_nhwc_f32(
661     0 /* top padding */, 0 /* right padding */,
662     0 /* bottom padding */, 0 /* left padding */,
663     1 /* kernel height */, 1 /* kernel width */,
664     1 /* subsampling height */, 1 /* subsampling width */,
665     1 /* dilation_height */, 1 /* dilation_width */,
666     1 /* groups */,
667     64 /* input channels per group */,
668     24 /* output_channels_per_group */,
669     64 /* input pixel stride */,
670     24 /* output pixel stride */,
671     w124.data(), w125.data(),
672     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
673     0 /* flags */,
674     &caches,
675     &op7);
676   if (status != xnn_status_success) {
677     std::cerr << "failed to create operation #7" << std::endl;
678     return ExecutionPlan();
679   }
680   operators.emplace_back(op7, xnn_delete_operator);
681 
682   xnn_operator_t op8 = nullptr;
683   status = xnn_create_convolution2d_nhwc_f32(
684     0 /* top padding */, 0 /* right padding */,
685     0 /* bottom padding */, 0 /* left padding */,
686     1 /* kernel height */, 1 /* kernel width */,
687     1 /* subsampling height */, 1 /* subsampling width */,
688     1 /* dilation_height */, 1 /* dilation_width */,
689     1 /* groups */,
690     24 /* input channels per group */,
691     72 /* output_channels_per_group */,
692     24 /* input pixel stride */,
693     72 /* output pixel stride */,
694     w126.data(), w127.data(),
695     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
696     0 /* flags */,
697     &caches,
698     &op8);
699   if (status != xnn_status_success) {
700     std::cerr << "failed to create operation #8" << std::endl;
701     return ExecutionPlan();
702   }
703   operators.emplace_back(op8, xnn_delete_operator);
704 
705   xnn_operator_t op9 = nullptr;
706   status = xnn_create_convolution2d_nhwc_f32(
707     1 /* top padding */, 1 /* right padding */,
708     1 /* bottom padding */, 1 /* left padding */,
709     3 /* kernel height */, 3 /* kernel width */,
710     1 /* subsampling height */, 1 /* subsampling width */,
711     1 /* dilation_height */, 1 /* dilation_width */,
712     72 /* groups */,
713     1 /* input channels per group */,
714     1 /* output_channels_per_group */,
715     72 /* input pixel stride */,
716     72 /* output pixel stride */,
717     w128.data(), w129.data(),
718     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
719     0 /* flags */,
720     &caches,
721     &op9);
722   if (status != xnn_status_success) {
723     std::cerr << "failed to create operation #9" << std::endl;
724     return ExecutionPlan();
725   }
726   operators.emplace_back(op9, xnn_delete_operator);
727 
728   xnn_operator_t op10 = nullptr;
729   status = xnn_create_convolution2d_nhwc_f32(
730     0 /* top padding */, 0 /* right padding */,
731     0 /* bottom padding */, 0 /* left padding */,
732     1 /* kernel height */, 1 /* kernel width */,
733     1 /* subsampling height */, 1 /* subsampling width */,
734     1 /* dilation_height */, 1 /* dilation_width */,
735     1 /* groups */,
736     72 /* input channels per group */,
737     24 /* output_channels_per_group */,
738     72 /* input pixel stride */,
739     24 /* output pixel stride */,
740     w130.data(), w131.data(),
741     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
742     0 /* flags */,
743     &caches,
744     &op10);
745   if (status != xnn_status_success) {
746     std::cerr << "failed to create operation #10" << std::endl;
747     return ExecutionPlan();
748   }
749   operators.emplace_back(op10, xnn_delete_operator);
750 
751   xnn_operator_t op11 = nullptr;
752   status = xnn_create_add_nd_f32(
753     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
754     0 /* flags */,
755     &op11);
756   if (status != xnn_status_success) {
757     std::cerr << "failed to create operation #11" << std::endl;
758     return ExecutionPlan();
759   }
760   operators.emplace_back(op11, xnn_delete_operator);
761 
762   xnn_operator_t op12 = nullptr;
763   status = xnn_create_convolution2d_nhwc_f32(
764     0 /* top padding */, 0 /* right padding */,
765     0 /* bottom padding */, 0 /* left padding */,
766     1 /* kernel height */, 1 /* kernel width */,
767     1 /* subsampling height */, 1 /* subsampling width */,
768     1 /* dilation_height */, 1 /* dilation_width */,
769     1 /* groups */,
770     24 /* input channels per group */,
771     72 /* output_channels_per_group */,
772     24 /* input pixel stride */,
773     72 /* output pixel stride */,
774     w132.data(), w133.data(),
775     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
776     0 /* flags */,
777     &caches,
778     &op12);
779   if (status != xnn_status_success) {
780     std::cerr << "failed to create operation #12" << std::endl;
781     return ExecutionPlan();
782   }
783   operators.emplace_back(op12, xnn_delete_operator);
784 
785   xnn_operator_t op13 = nullptr;
786   status = xnn_create_convolution2d_nhwc_f32(
787     1 /* top padding */, 2 /* right padding */,
788     2 /* bottom padding */, 1 /* left padding */,
789     5 /* kernel height */, 5 /* kernel width */,
790     2 /* subsampling height */, 2 /* subsampling width */,
791     1 /* dilation_height */, 1 /* dilation_width */,
792     72 /* groups */,
793     1 /* input channels per group */,
794     1 /* output_channels_per_group */,
795     72 /* input pixel stride */,
796     72 /* output pixel stride */,
797     w134.data(), w135.data(),
798     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
799     0 /* flags */,
800     &caches,
801     &op13);
802   if (status != xnn_status_success) {
803     std::cerr << "failed to create operation #13" << std::endl;
804     return ExecutionPlan();
805   }
806   operators.emplace_back(op13, xnn_delete_operator);
807 
808   xnn_operator_t op14 = nullptr;
809   status = xnn_create_global_average_pooling_nwc_f32(
810     72 /* channels */, 72 /* input stride */, 72 /* output stride */,
811     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
812     0 /* flags */,
813     &op14);
814   if (status != xnn_status_success) {
815     std::cerr << "failed to create operation #14" << std::endl;
816     return ExecutionPlan();
817   }
818   operators.emplace_back(op14, xnn_delete_operator);
819 
820   xnn_operator_t op15 = nullptr;
821   status = xnn_create_convolution2d_nhwc_f32(
822     0 /* top padding */, 0 /* right padding */,
823     0 /* bottom padding */, 0 /* left padding */,
824     1 /* kernel height */, 1 /* kernel width */,
825     1 /* subsampling height */, 1 /* subsampling width */,
826     1 /* dilation_height */, 1 /* dilation_width */,
827     1 /* groups */,
828     72 /* input channels per group */,
829     24 /* output_channels_per_group */,
830     72 /* input pixel stride */,
831     24 /* output pixel stride */,
832     w136.data(), w137.data(),
833     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
834     0 /* flags */,
835     &caches,
836     &op15);
837   if (status != xnn_status_success) {
838     std::cerr << "failed to create operation #15" << std::endl;
839     return ExecutionPlan();
840   }
841   operators.emplace_back(op15, xnn_delete_operator);
842 
843   xnn_operator_t op16 = nullptr;
844   status = xnn_create_convolution2d_nhwc_f32(
845     0 /* top padding */, 0 /* right padding */,
846     0 /* bottom padding */, 0 /* left padding */,
847     1 /* kernel height */, 1 /* kernel width */,
848     1 /* subsampling height */, 1 /* subsampling width */,
849     1 /* dilation_height */, 1 /* dilation_width */,
850     1 /* groups */,
851     24 /* input channels per group */,
852     72 /* output_channels_per_group */,
853     24 /* input pixel stride */,
854     72 /* output pixel stride */,
855     w138.data(), w139.data(),
856     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
857     0 /* flags */,
858     &caches,
859     &op16);
860   if (status != xnn_status_success) {
861     std::cerr << "failed to create operation #16" << std::endl;
862     return ExecutionPlan();
863   }
864   operators.emplace_back(op16, xnn_delete_operator);
865 
866   xnn_operator_t op17 = nullptr;
867   status = xnn_create_multiply_nd_f32(
868     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
869     0 /* flags */,
870     &op17);
871   if (status != xnn_status_success) {
872     std::cerr << "failed to create operation #17" << std::endl;
873     return ExecutionPlan();
874   }
875   operators.emplace_back(op17, xnn_delete_operator);
876 
877   xnn_operator_t op18 = nullptr;
878   status = xnn_create_convolution2d_nhwc_f32(
879     0 /* top padding */, 0 /* right padding */,
880     0 /* bottom padding */, 0 /* left padding */,
881     1 /* kernel height */, 1 /* kernel width */,
882     1 /* subsampling height */, 1 /* subsampling width */,
883     1 /* dilation_height */, 1 /* dilation_width */,
884     1 /* groups */,
885     72 /* input channels per group */,
886     40 /* output_channels_per_group */,
887     72 /* input pixel stride */,
888     40 /* output pixel stride */,
889     w140.data(), w141.data(),
890     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
891     0 /* flags */,
892     &caches,
893     &op18);
894   if (status != xnn_status_success) {
895     std::cerr << "failed to create operation #18" << std::endl;
896     return ExecutionPlan();
897   }
898   operators.emplace_back(op18, xnn_delete_operator);
899 
900   xnn_operator_t op19 = nullptr;
901   status = xnn_create_convolution2d_nhwc_f32(
902     0 /* top padding */, 0 /* right padding */,
903     0 /* bottom padding */, 0 /* left padding */,
904     1 /* kernel height */, 1 /* kernel width */,
905     1 /* subsampling height */, 1 /* subsampling width */,
906     1 /* dilation_height */, 1 /* dilation_width */,
907     1 /* groups */,
908     40 /* input channels per group */,
909     120 /* output_channels_per_group */,
910     40 /* input pixel stride */,
911     120 /* output pixel stride */,
912     w142.data(), w143.data(),
913     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
914     0 /* flags */,
915     &caches,
916     &op19);
917   if (status != xnn_status_success) {
918     std::cerr << "failed to create operation #19" << std::endl;
919     return ExecutionPlan();
920   }
921   operators.emplace_back(op19, xnn_delete_operator);
922 
923   xnn_operator_t op20 = nullptr;
924   status = xnn_create_convolution2d_nhwc_f32(
925     2 /* top padding */, 2 /* right padding */,
926     2 /* bottom padding */, 2 /* left padding */,
927     5 /* kernel height */, 5 /* kernel width */,
928     1 /* subsampling height */, 1 /* subsampling width */,
929     1 /* dilation_height */, 1 /* dilation_width */,
930     120 /* groups */,
931     1 /* input channels per group */,
932     1 /* output_channels_per_group */,
933     120 /* input pixel stride */,
934     120 /* output pixel stride */,
935     w144.data(), w145.data(),
936     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
937     0 /* flags */,
938     &caches,
939     &op20);
940   if (status != xnn_status_success) {
941     std::cerr << "failed to create operation #20" << std::endl;
942     return ExecutionPlan();
943   }
944   operators.emplace_back(op20, xnn_delete_operator);
945 
946   xnn_operator_t op21 = nullptr;
947   status = xnn_create_global_average_pooling_nwc_f32(
948     120 /* channels */, 120 /* input stride */, 120 /* output stride */,
949     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
950     0 /* flags */,
951     &op21);
952   if (status != xnn_status_success) {
953     std::cerr << "failed to create operation #21" << std::endl;
954     return ExecutionPlan();
955   }
956   operators.emplace_back(op21, xnn_delete_operator);
957 
958   xnn_operator_t op22 = nullptr;
959   status = xnn_create_convolution2d_nhwc_f32(
960     0 /* top padding */, 0 /* right padding */,
961     0 /* bottom padding */, 0 /* left padding */,
962     1 /* kernel height */, 1 /* kernel width */,
963     1 /* subsampling height */, 1 /* subsampling width */,
964     1 /* dilation_height */, 1 /* dilation_width */,
965     1 /* groups */,
966     120 /* input channels per group */,
967     32 /* output_channels_per_group */,
968     120 /* input pixel stride */,
969     32 /* output pixel stride */,
970     w146.data(), w147.data(),
971     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
972     0 /* flags */,
973     &caches,
974     &op22);
975   if (status != xnn_status_success) {
976     std::cerr << "failed to create operation #22" << std::endl;
977     return ExecutionPlan();
978   }
979   operators.emplace_back(op22, xnn_delete_operator);
980 
981   xnn_operator_t op23 = nullptr;
982   status = xnn_create_convolution2d_nhwc_f32(
983     0 /* top padding */, 0 /* right padding */,
984     0 /* bottom padding */, 0 /* left padding */,
985     1 /* kernel height */, 1 /* kernel width */,
986     1 /* subsampling height */, 1 /* subsampling width */,
987     1 /* dilation_height */, 1 /* dilation_width */,
988     1 /* groups */,
989     32 /* input channels per group */,
990     120 /* output_channels_per_group */,
991     32 /* input pixel stride */,
992     120 /* output pixel stride */,
993     w148.data(), w149.data(),
994     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
995     0 /* flags */,
996     &caches,
997     &op23);
998   if (status != xnn_status_success) {
999     std::cerr << "failed to create operation #23" << std::endl;
1000     return ExecutionPlan();
1001   }
1002   operators.emplace_back(op23, xnn_delete_operator);
1003 
1004   xnn_operator_t op24 = nullptr;
1005   status = xnn_create_multiply_nd_f32(
1006     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1007     0 /* flags */,
1008     &op24);
1009   if (status != xnn_status_success) {
1010     std::cerr << "failed to create operation #24" << std::endl;
1011     return ExecutionPlan();
1012   }
1013   operators.emplace_back(op24, xnn_delete_operator);
1014 
1015   xnn_operator_t op25 = nullptr;
1016   status = xnn_create_convolution2d_nhwc_f32(
1017     0 /* top padding */, 0 /* right padding */,
1018     0 /* bottom padding */, 0 /* left padding */,
1019     1 /* kernel height */, 1 /* kernel width */,
1020     1 /* subsampling height */, 1 /* subsampling width */,
1021     1 /* dilation_height */, 1 /* dilation_width */,
1022     1 /* groups */,
1023     120 /* input channels per group */,
1024     40 /* output_channels_per_group */,
1025     120 /* input pixel stride */,
1026     40 /* output pixel stride */,
1027     w150.data(), w151.data(),
1028     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1029     0 /* flags */,
1030     &caches,
1031     &op25);
1032   if (status != xnn_status_success) {
1033     std::cerr << "failed to create operation #25" << std::endl;
1034     return ExecutionPlan();
1035   }
1036   operators.emplace_back(op25, xnn_delete_operator);
1037 
1038   xnn_operator_t op26 = nullptr;
1039   status = xnn_create_add_nd_f32(
1040     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1041     0 /* flags */,
1042     &op26);
1043   if (status != xnn_status_success) {
1044     std::cerr << "failed to create operation #26" << std::endl;
1045     return ExecutionPlan();
1046   }
1047   operators.emplace_back(op26, xnn_delete_operator);
1048 
1049   xnn_operator_t op27 = nullptr;
1050   status = xnn_create_convolution2d_nhwc_f32(
1051     0 /* top padding */, 0 /* right padding */,
1052     0 /* bottom padding */, 0 /* left padding */,
1053     1 /* kernel height */, 1 /* kernel width */,
1054     1 /* subsampling height */, 1 /* subsampling width */,
1055     1 /* dilation_height */, 1 /* dilation_width */,
1056     1 /* groups */,
1057     40 /* input channels per group */,
1058     120 /* output_channels_per_group */,
1059     40 /* input pixel stride */,
1060     120 /* output pixel stride */,
1061     w152.data(), w153.data(),
1062     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1063     0 /* flags */,
1064     &caches,
1065     &op27);
1066   if (status != xnn_status_success) {
1067     std::cerr << "failed to create operation #27" << std::endl;
1068     return ExecutionPlan();
1069   }
1070   operators.emplace_back(op27, xnn_delete_operator);
1071 
1072   xnn_operator_t op28 = nullptr;
1073   status = xnn_create_convolution2d_nhwc_f32(
1074     2 /* top padding */, 2 /* right padding */,
1075     2 /* bottom padding */, 2 /* left padding */,
1076     5 /* kernel height */, 5 /* kernel width */,
1077     1 /* subsampling height */, 1 /* subsampling width */,
1078     1 /* dilation_height */, 1 /* dilation_width */,
1079     120 /* groups */,
1080     1 /* input channels per group */,
1081     1 /* output_channels_per_group */,
1082     120 /* input pixel stride */,
1083     120 /* output pixel stride */,
1084     w154.data(), w155.data(),
1085     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1086     0 /* flags */,
1087     &caches,
1088     &op28);
1089   if (status != xnn_status_success) {
1090     std::cerr << "failed to create operation #28" << std::endl;
1091     return ExecutionPlan();
1092   }
1093   operators.emplace_back(op28, xnn_delete_operator);
1094 
1095   xnn_operator_t op29 = nullptr;
1096   status = xnn_create_global_average_pooling_nwc_f32(
1097     120 /* channels */, 120 /* input stride */, 120 /* output stride */,
1098     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
1099     0 /* flags */,
1100     &op29);
1101   if (status != xnn_status_success) {
1102     std::cerr << "failed to create operation #29" << std::endl;
1103     return ExecutionPlan();
1104   }
1105   operators.emplace_back(op29, xnn_delete_operator);
1106 
1107   xnn_operator_t op30 = nullptr;
1108   status = xnn_create_convolution2d_nhwc_f32(
1109     0 /* top padding */, 0 /* right padding */,
1110     0 /* bottom padding */, 0 /* left padding */,
1111     1 /* kernel height */, 1 /* kernel width */,
1112     1 /* subsampling height */, 1 /* subsampling width */,
1113     1 /* dilation_height */, 1 /* dilation_width */,
1114     1 /* groups */,
1115     120 /* input channels per group */,
1116     32 /* output_channels_per_group */,
1117     120 /* input pixel stride */,
1118     32 /* output pixel stride */,
1119     w156.data(), w157.data(),
1120     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1121     0 /* flags */,
1122     &caches,
1123     &op30);
1124   if (status != xnn_status_success) {
1125     std::cerr << "failed to create operation #30" << std::endl;
1126     return ExecutionPlan();
1127   }
1128   operators.emplace_back(op30, xnn_delete_operator);
1129 
1130   xnn_operator_t op31 = nullptr;
1131   status = xnn_create_convolution2d_nhwc_f32(
1132     0 /* top padding */, 0 /* right padding */,
1133     0 /* bottom padding */, 0 /* left padding */,
1134     1 /* kernel height */, 1 /* kernel width */,
1135     1 /* subsampling height */, 1 /* subsampling width */,
1136     1 /* dilation_height */, 1 /* dilation_width */,
1137     1 /* groups */,
1138     32 /* input channels per group */,
1139     120 /* output_channels_per_group */,
1140     32 /* input pixel stride */,
1141     120 /* output pixel stride */,
1142     w158.data(), w159.data(),
1143     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
1144     0 /* flags */,
1145     &caches,
1146     &op31);
1147   if (status != xnn_status_success) {
1148     std::cerr << "failed to create operation #31" << std::endl;
1149     return ExecutionPlan();
1150   }
1151   operators.emplace_back(op31, xnn_delete_operator);
1152 
1153   xnn_operator_t op32 = nullptr;
1154   status = xnn_create_multiply_nd_f32(
1155     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1156     0 /* flags */,
1157     &op32);
1158   if (status != xnn_status_success) {
1159     std::cerr << "failed to create operation #32" << std::endl;
1160     return ExecutionPlan();
1161   }
1162   operators.emplace_back(op32, xnn_delete_operator);
1163 
1164   xnn_operator_t op33 = nullptr;
1165   status = xnn_create_convolution2d_nhwc_f32(
1166     0 /* top padding */, 0 /* right padding */,
1167     0 /* bottom padding */, 0 /* left padding */,
1168     1 /* kernel height */, 1 /* kernel width */,
1169     1 /* subsampling height */, 1 /* subsampling width */,
1170     1 /* dilation_height */, 1 /* dilation_width */,
1171     1 /* groups */,
1172     120 /* input channels per group */,
1173     40 /* output_channels_per_group */,
1174     120 /* input pixel stride */,
1175     40 /* output pixel stride */,
1176     w160.data(), w161.data(),
1177     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1178     0 /* flags */,
1179     &caches,
1180     &op33);
1181   if (status != xnn_status_success) {
1182     std::cerr << "failed to create operation #33" << std::endl;
1183     return ExecutionPlan();
1184   }
1185   operators.emplace_back(op33, xnn_delete_operator);
1186 
1187   xnn_operator_t op34 = nullptr;
1188   status = xnn_create_add_nd_f32(
1189     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1190     0 /* flags */,
1191     &op34);
1192   if (status != xnn_status_success) {
1193     std::cerr << "failed to create operation #34" << std::endl;
1194     return ExecutionPlan();
1195   }
1196   operators.emplace_back(op34, xnn_delete_operator);
1197 
1198   xnn_operator_t op35 = nullptr;
1199   status = xnn_create_convolution2d_nhwc_f32(
1200     0 /* top padding */, 0 /* right padding */,
1201     0 /* bottom padding */, 0 /* left padding */,
1202     1 /* kernel height */, 1 /* kernel width */,
1203     1 /* subsampling height */, 1 /* subsampling width */,
1204     1 /* dilation_height */, 1 /* dilation_width */,
1205     1 /* groups */,
1206     40 /* input channels per group */,
1207     240 /* output_channels_per_group */,
1208     40 /* input pixel stride */,
1209     240 /* output pixel stride */,
1210     w162.data(), w163.data(),
1211     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1212     0 /* flags */,
1213     &caches,
1214     &op35);
1215   if (status != xnn_status_success) {
1216     std::cerr << "failed to create operation #35" << std::endl;
1217     return ExecutionPlan();
1218   }
1219   operators.emplace_back(op35, xnn_delete_operator);
1220 
1221   xnn_operator_t op36 = nullptr;
1222   status = xnn_create_hardswish_nc_f32(
1223     240 /* channels */,
1224     240 /* input stride */,
1225     240 /* output stride */,
1226     0 /* flags */,
1227     &op36);
1228   if (status != xnn_status_success) {
1229     std::cerr << "failed to create operation #36" << std::endl;
1230     return ExecutionPlan();
1231   }
1232   operators.emplace_back(op36, xnn_delete_operator);
1233 
1234   xnn_operator_t op37 = nullptr;
1235   status = xnn_create_convolution2d_nhwc_f32(
1236     0 /* top padding */, 1 /* right padding */,
1237     1 /* bottom padding */, 0 /* left padding */,
1238     3 /* kernel height */, 3 /* kernel width */,
1239     2 /* subsampling height */, 2 /* subsampling width */,
1240     1 /* dilation_height */, 1 /* dilation_width */,
1241     240 /* groups */,
1242     1 /* input channels per group */,
1243     1 /* output_channels_per_group */,
1244     240 /* input pixel stride */,
1245     240 /* output pixel stride */,
1246     w164.data(), w165.data(),
1247     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1248     0 /* flags */,
1249     &caches,
1250     &op37);
1251   if (status != xnn_status_success) {
1252     std::cerr << "failed to create operation #37" << std::endl;
1253     return ExecutionPlan();
1254   }
1255   operators.emplace_back(op37, xnn_delete_operator);
1256 
1257   xnn_operator_t op38 = nullptr;
1258   status = xnn_create_hardswish_nc_f32(
1259     240 /* channels */,
1260     240 /* input stride */,
1261     240 /* output stride */,
1262     0 /* flags */,
1263     &op38);
1264   if (status != xnn_status_success) {
1265     std::cerr << "failed to create operation #38" << std::endl;
1266     return ExecutionPlan();
1267   }
1268   operators.emplace_back(op38, xnn_delete_operator);
1269 
1270   xnn_operator_t op39 = nullptr;
1271   status = xnn_create_convolution2d_nhwc_f32(
1272     0 /* top padding */, 0 /* right padding */,
1273     0 /* bottom padding */, 0 /* left padding */,
1274     1 /* kernel height */, 1 /* kernel width */,
1275     1 /* subsampling height */, 1 /* subsampling width */,
1276     1 /* dilation_height */, 1 /* dilation_width */,
1277     1 /* groups */,
1278     240 /* input channels per group */,
1279     80 /* output_channels_per_group */,
1280     240 /* input pixel stride */,
1281     80 /* output pixel stride */,
1282     w166.data(), w167.data(),
1283     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1284     0 /* flags */,
1285     &caches,
1286     &op39);
1287   if (status != xnn_status_success) {
1288     std::cerr << "failed to create operation #39" << std::endl;
1289     return ExecutionPlan();
1290   }
1291   operators.emplace_back(op39, xnn_delete_operator);
1292 
1293   xnn_operator_t op40 = nullptr;
1294   status = xnn_create_convolution2d_nhwc_f32(
1295     0 /* top padding */, 0 /* right padding */,
1296     0 /* bottom padding */, 0 /* left padding */,
1297     1 /* kernel height */, 1 /* kernel width */,
1298     1 /* subsampling height */, 1 /* subsampling width */,
1299     1 /* dilation_height */, 1 /* dilation_width */,
1300     1 /* groups */,
1301     80 /* input channels per group */,
1302     200 /* output_channels_per_group */,
1303     80 /* input pixel stride */,
1304     200 /* output pixel stride */,
1305     w168.data(), w169.data(),
1306     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1307     0 /* flags */,
1308     &caches,
1309     &op40);
1310   if (status != xnn_status_success) {
1311     std::cerr << "failed to create operation #40" << std::endl;
1312     return ExecutionPlan();
1313   }
1314   operators.emplace_back(op40, xnn_delete_operator);
1315 
1316   xnn_operator_t op41 = nullptr;
1317   status = xnn_create_hardswish_nc_f32(
1318     200 /* channels */,
1319     200 /* input stride */,
1320     200 /* output stride */,
1321     0 /* flags */,
1322     &op41);
1323   if (status != xnn_status_success) {
1324     std::cerr << "failed to create operation #41" << std::endl;
1325     return ExecutionPlan();
1326   }
1327   operators.emplace_back(op41, xnn_delete_operator);
1328 
1329   xnn_operator_t op42 = nullptr;
1330   status = xnn_create_convolution2d_nhwc_f32(
1331     1 /* top padding */, 1 /* right padding */,
1332     1 /* bottom padding */, 1 /* left padding */,
1333     3 /* kernel height */, 3 /* kernel width */,
1334     1 /* subsampling height */, 1 /* subsampling width */,
1335     1 /* dilation_height */, 1 /* dilation_width */,
1336     200 /* groups */,
1337     1 /* input channels per group */,
1338     1 /* output_channels_per_group */,
1339     200 /* input pixel stride */,
1340     200 /* output pixel stride */,
1341     w170.data(), w171.data(),
1342     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1343     0 /* flags */,
1344     &caches,
1345     &op42);
1346   if (status != xnn_status_success) {
1347     std::cerr << "failed to create operation #42" << std::endl;
1348     return ExecutionPlan();
1349   }
1350   operators.emplace_back(op42, xnn_delete_operator);
1351 
1352   xnn_operator_t op43 = nullptr;
1353   status = xnn_create_hardswish_nc_f32(
1354     200 /* channels */,
1355     200 /* input stride */,
1356     200 /* output stride */,
1357     0 /* flags */,
1358     &op43);
1359   if (status != xnn_status_success) {
1360     std::cerr << "failed to create operation #43" << std::endl;
1361     return ExecutionPlan();
1362   }
1363   operators.emplace_back(op43, xnn_delete_operator);
1364 
1365   xnn_operator_t op44 = nullptr;
1366   status = xnn_create_convolution2d_nhwc_f32(
1367     0 /* top padding */, 0 /* right padding */,
1368     0 /* bottom padding */, 0 /* left padding */,
1369     1 /* kernel height */, 1 /* kernel width */,
1370     1 /* subsampling height */, 1 /* subsampling width */,
1371     1 /* dilation_height */, 1 /* dilation_width */,
1372     1 /* groups */,
1373     200 /* input channels per group */,
1374     80 /* output_channels_per_group */,
1375     200 /* input pixel stride */,
1376     80 /* output pixel stride */,
1377     w172.data(), w173.data(),
1378     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1379     0 /* flags */,
1380     &caches,
1381     &op44);
1382   if (status != xnn_status_success) {
1383     std::cerr << "failed to create operation #44" << std::endl;
1384     return ExecutionPlan();
1385   }
1386   operators.emplace_back(op44, xnn_delete_operator);
1387 
1388   xnn_operator_t op45 = nullptr;
1389   status = xnn_create_add_nd_f32(
1390     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1391     0 /* flags */,
1392     &op45);
1393   if (status != xnn_status_success) {
1394     std::cerr << "failed to create operation #45" << std::endl;
1395     return ExecutionPlan();
1396   }
1397   operators.emplace_back(op45, xnn_delete_operator);
1398 
1399   xnn_operator_t op46 = nullptr;
1400   status = xnn_create_convolution2d_nhwc_f32(
1401     0 /* top padding */, 0 /* right padding */,
1402     0 /* bottom padding */, 0 /* left padding */,
1403     1 /* kernel height */, 1 /* kernel width */,
1404     1 /* subsampling height */, 1 /* subsampling width */,
1405     1 /* dilation_height */, 1 /* dilation_width */,
1406     1 /* groups */,
1407     80 /* input channels per group */,
1408     184 /* output_channels_per_group */,
1409     80 /* input pixel stride */,
1410     184 /* output pixel stride */,
1411     w174.data(), w175.data(),
1412     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1413     0 /* flags */,
1414     &caches,
1415     &op46);
1416   if (status != xnn_status_success) {
1417     std::cerr << "failed to create operation #46" << std::endl;
1418     return ExecutionPlan();
1419   }
1420   operators.emplace_back(op46, xnn_delete_operator);
1421 
1422   xnn_operator_t op47 = nullptr;
1423   status = xnn_create_hardswish_nc_f32(
1424     184 /* channels */,
1425     184 /* input stride */,
1426     184 /* output stride */,
1427     0 /* flags */,
1428     &op47);
1429   if (status != xnn_status_success) {
1430     std::cerr << "failed to create operation #47" << std::endl;
1431     return ExecutionPlan();
1432   }
1433   operators.emplace_back(op47, xnn_delete_operator);
1434 
1435   xnn_operator_t op48 = nullptr;
1436   status = xnn_create_convolution2d_nhwc_f32(
1437     1 /* top padding */, 1 /* right padding */,
1438     1 /* bottom padding */, 1 /* left padding */,
1439     3 /* kernel height */, 3 /* kernel width */,
1440     1 /* subsampling height */, 1 /* subsampling width */,
1441     1 /* dilation_height */, 1 /* dilation_width */,
1442     184 /* groups */,
1443     1 /* input channels per group */,
1444     1 /* output_channels_per_group */,
1445     184 /* input pixel stride */,
1446     184 /* output pixel stride */,
1447     w176.data(), w177.data(),
1448     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1449     0 /* flags */,
1450     &caches,
1451     &op48);
1452   if (status != xnn_status_success) {
1453     std::cerr << "failed to create operation #48" << std::endl;
1454     return ExecutionPlan();
1455   }
1456   operators.emplace_back(op48, xnn_delete_operator);
1457 
1458   xnn_operator_t op49 = nullptr;
1459   status = xnn_create_hardswish_nc_f32(
1460     184 /* channels */,
1461     184 /* input stride */,
1462     184 /* output stride */,
1463     0 /* flags */,
1464     &op49);
1465   if (status != xnn_status_success) {
1466     std::cerr << "failed to create operation #49" << std::endl;
1467     return ExecutionPlan();
1468   }
1469   operators.emplace_back(op49, xnn_delete_operator);
1470 
1471   xnn_operator_t op50 = nullptr;
1472   status = xnn_create_convolution2d_nhwc_f32(
1473     0 /* top padding */, 0 /* right padding */,
1474     0 /* bottom padding */, 0 /* left padding */,
1475     1 /* kernel height */, 1 /* kernel width */,
1476     1 /* subsampling height */, 1 /* subsampling width */,
1477     1 /* dilation_height */, 1 /* dilation_width */,
1478     1 /* groups */,
1479     184 /* input channels per group */,
1480     80 /* output_channels_per_group */,
1481     184 /* input pixel stride */,
1482     80 /* output pixel stride */,
1483     w178.data(), w179.data(),
1484     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1485     0 /* flags */,
1486     &caches,
1487     &op50);
1488   if (status != xnn_status_success) {
1489     std::cerr << "failed to create operation #50" << std::endl;
1490     return ExecutionPlan();
1491   }
1492   operators.emplace_back(op50, xnn_delete_operator);
1493 
1494   xnn_operator_t op51 = nullptr;
1495   status = xnn_create_add_nd_f32(
1496     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1497     0 /* flags */,
1498     &op51);
1499   if (status != xnn_status_success) {
1500     std::cerr << "failed to create operation #51" << std::endl;
1501     return ExecutionPlan();
1502   }
1503   operators.emplace_back(op51, xnn_delete_operator);
1504 
1505   xnn_operator_t op52 = nullptr;
1506   status = xnn_create_convolution2d_nhwc_f32(
1507     0 /* top padding */, 0 /* right padding */,
1508     0 /* bottom padding */, 0 /* left padding */,
1509     1 /* kernel height */, 1 /* kernel width */,
1510     1 /* subsampling height */, 1 /* subsampling width */,
1511     1 /* dilation_height */, 1 /* dilation_width */,
1512     1 /* groups */,
1513     80 /* input channels per group */,
1514     184 /* output_channels_per_group */,
1515     80 /* input pixel stride */,
1516     184 /* output pixel stride */,
1517     w180.data(), w181.data(),
1518     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1519     0 /* flags */,
1520     &caches,
1521     &op52);
1522   if (status != xnn_status_success) {
1523     std::cerr << "failed to create operation #52" << std::endl;
1524     return ExecutionPlan();
1525   }
1526   operators.emplace_back(op52, xnn_delete_operator);
1527 
1528   xnn_operator_t op53 = nullptr;
1529   status = xnn_create_hardswish_nc_f32(
1530     184 /* channels */,
1531     184 /* input stride */,
1532     184 /* output stride */,
1533     0 /* flags */,
1534     &op53);
1535   if (status != xnn_status_success) {
1536     std::cerr << "failed to create operation #53" << std::endl;
1537     return ExecutionPlan();
1538   }
1539   operators.emplace_back(op53, xnn_delete_operator);
1540 
1541   xnn_operator_t op54 = nullptr;
1542   status = xnn_create_convolution2d_nhwc_f32(
1543     1 /* top padding */, 1 /* right padding */,
1544     1 /* bottom padding */, 1 /* left padding */,
1545     3 /* kernel height */, 3 /* kernel width */,
1546     1 /* subsampling height */, 1 /* subsampling width */,
1547     1 /* dilation_height */, 1 /* dilation_width */,
1548     184 /* groups */,
1549     1 /* input channels per group */,
1550     1 /* output_channels_per_group */,
1551     184 /* input pixel stride */,
1552     184 /* output pixel stride */,
1553     w182.data(), w183.data(),
1554     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1555     0 /* flags */,
1556     &caches,
1557     &op54);
1558   if (status != xnn_status_success) {
1559     std::cerr << "failed to create operation #54" << std::endl;
1560     return ExecutionPlan();
1561   }
1562   operators.emplace_back(op54, xnn_delete_operator);
1563 
1564   xnn_operator_t op55 = nullptr;
1565   status = xnn_create_hardswish_nc_f32(
1566     184 /* channels */,
1567     184 /* input stride */,
1568     184 /* output stride */,
1569     0 /* flags */,
1570     &op55);
1571   if (status != xnn_status_success) {
1572     std::cerr << "failed to create operation #55" << std::endl;
1573     return ExecutionPlan();
1574   }
1575   operators.emplace_back(op55, xnn_delete_operator);
1576 
1577   xnn_operator_t op56 = nullptr;
1578   status = xnn_create_convolution2d_nhwc_f32(
1579     0 /* top padding */, 0 /* right padding */,
1580     0 /* bottom padding */, 0 /* left padding */,
1581     1 /* kernel height */, 1 /* kernel width */,
1582     1 /* subsampling height */, 1 /* subsampling width */,
1583     1 /* dilation_height */, 1 /* dilation_width */,
1584     1 /* groups */,
1585     184 /* input channels per group */,
1586     80 /* output_channels_per_group */,
1587     184 /* input pixel stride */,
1588     80 /* output pixel stride */,
1589     w184.data(), w185.data(),
1590     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1591     0 /* flags */,
1592     &caches,
1593     &op56);
1594   if (status != xnn_status_success) {
1595     std::cerr << "failed to create operation #56" << std::endl;
1596     return ExecutionPlan();
1597   }
1598   operators.emplace_back(op56, xnn_delete_operator);
1599 
1600   xnn_operator_t op57 = nullptr;
1601   status = xnn_create_add_nd_f32(
1602     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1603     0 /* flags */,
1604     &op57);
1605   if (status != xnn_status_success) {
1606     std::cerr << "failed to create operation #57" << std::endl;
1607     return ExecutionPlan();
1608   }
1609   operators.emplace_back(op57, xnn_delete_operator);
1610 
1611   xnn_operator_t op58 = nullptr;
1612   status = xnn_create_convolution2d_nhwc_f32(
1613     0 /* top padding */, 0 /* right padding */,
1614     0 /* bottom padding */, 0 /* left padding */,
1615     1 /* kernel height */, 1 /* kernel width */,
1616     1 /* subsampling height */, 1 /* subsampling width */,
1617     1 /* dilation_height */, 1 /* dilation_width */,
1618     1 /* groups */,
1619     80 /* input channels per group */,
1620     480 /* output_channels_per_group */,
1621     80 /* input pixel stride */,
1622     480 /* output pixel stride */,
1623     w186.data(), w187.data(),
1624     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1625     0 /* flags */,
1626     &caches,
1627     &op58);
1628   if (status != xnn_status_success) {
1629     std::cerr << "failed to create operation #58" << std::endl;
1630     return ExecutionPlan();
1631   }
1632   operators.emplace_back(op58, xnn_delete_operator);
1633 
1634   xnn_operator_t op59 = nullptr;
1635   status = xnn_create_hardswish_nc_f32(
1636     480 /* channels */,
1637     480 /* input stride */,
1638     480 /* output stride */,
1639     0 /* flags */,
1640     &op59);
1641   if (status != xnn_status_success) {
1642     std::cerr << "failed to create operation #59" << std::endl;
1643     return ExecutionPlan();
1644   }
1645   operators.emplace_back(op59, xnn_delete_operator);
1646 
1647   xnn_operator_t op60 = nullptr;
1648   status = xnn_create_convolution2d_nhwc_f32(
1649     1 /* top padding */, 1 /* right padding */,
1650     1 /* bottom padding */, 1 /* left padding */,
1651     3 /* kernel height */, 3 /* kernel width */,
1652     1 /* subsampling height */, 1 /* subsampling width */,
1653     1 /* dilation_height */, 1 /* dilation_width */,
1654     480 /* groups */,
1655     1 /* input channels per group */,
1656     1 /* output_channels_per_group */,
1657     480 /* input pixel stride */,
1658     480 /* output pixel stride */,
1659     w188.data(), w189.data(),
1660     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1661     0 /* flags */,
1662     &caches,
1663     &op60);
1664   if (status != xnn_status_success) {
1665     std::cerr << "failed to create operation #60" << std::endl;
1666     return ExecutionPlan();
1667   }
1668   operators.emplace_back(op60, xnn_delete_operator);
1669 
1670   xnn_operator_t op61 = nullptr;
1671   status = xnn_create_hardswish_nc_f32(
1672     480 /* channels */,
1673     480 /* input stride */,
1674     480 /* output stride */,
1675     0 /* flags */,
1676     &op61);
1677   if (status != xnn_status_success) {
1678     std::cerr << "failed to create operation #61" << std::endl;
1679     return ExecutionPlan();
1680   }
1681   operators.emplace_back(op61, xnn_delete_operator);
1682 
1683   xnn_operator_t op62 = nullptr;
1684   status = xnn_create_global_average_pooling_nwc_f32(
1685     480 /* channels */, 480 /* input stride */, 480 /* output stride */,
1686     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
1687     0 /* flags */,
1688     &op62);
1689   if (status != xnn_status_success) {
1690     std::cerr << "failed to create operation #62" << std::endl;
1691     return ExecutionPlan();
1692   }
1693   operators.emplace_back(op62, xnn_delete_operator);
1694 
1695   xnn_operator_t op63 = nullptr;
1696   status = xnn_create_convolution2d_nhwc_f32(
1697     0 /* top padding */, 0 /* right padding */,
1698     0 /* bottom padding */, 0 /* left padding */,
1699     1 /* kernel height */, 1 /* kernel width */,
1700     1 /* subsampling height */, 1 /* subsampling width */,
1701     1 /* dilation_height */, 1 /* dilation_width */,
1702     1 /* groups */,
1703     480 /* input channels per group */,
1704     120 /* output_channels_per_group */,
1705     480 /* input pixel stride */,
1706     120 /* output pixel stride */,
1707     w190.data(), w191.data(),
1708     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1709     0 /* flags */,
1710     &caches,
1711     &op63);
1712   if (status != xnn_status_success) {
1713     std::cerr << "failed to create operation #63" << std::endl;
1714     return ExecutionPlan();
1715   }
1716   operators.emplace_back(op63, xnn_delete_operator);
1717 
1718   xnn_operator_t op64 = nullptr;
1719   status = xnn_create_convolution2d_nhwc_f32(
1720     0 /* top padding */, 0 /* right padding */,
1721     0 /* bottom padding */, 0 /* left padding */,
1722     1 /* kernel height */, 1 /* kernel width */,
1723     1 /* subsampling height */, 1 /* subsampling width */,
1724     1 /* dilation_height */, 1 /* dilation_width */,
1725     1 /* groups */,
1726     120 /* input channels per group */,
1727     480 /* output_channels_per_group */,
1728     120 /* input pixel stride */,
1729     480 /* output pixel stride */,
1730     w192.data(), w193.data(),
1731     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
1732     0 /* flags */,
1733     &caches,
1734     &op64);
1735   if (status != xnn_status_success) {
1736     std::cerr << "failed to create operation #64" << std::endl;
1737     return ExecutionPlan();
1738   }
1739   operators.emplace_back(op64, xnn_delete_operator);
1740 
1741   xnn_operator_t op65 = nullptr;
1742   status = xnn_create_multiply_nd_f32(
1743     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1744     0 /* flags */,
1745     &op65);
1746   if (status != xnn_status_success) {
1747     std::cerr << "failed to create operation #65" << std::endl;
1748     return ExecutionPlan();
1749   }
1750   operators.emplace_back(op65, xnn_delete_operator);
1751 
1752   xnn_operator_t op66 = nullptr;
1753   status = xnn_create_convolution2d_nhwc_f32(
1754     0 /* top padding */, 0 /* right padding */,
1755     0 /* bottom padding */, 0 /* left padding */,
1756     1 /* kernel height */, 1 /* kernel width */,
1757     1 /* subsampling height */, 1 /* subsampling width */,
1758     1 /* dilation_height */, 1 /* dilation_width */,
1759     1 /* groups */,
1760     480 /* input channels per group */,
1761     112 /* output_channels_per_group */,
1762     480 /* input pixel stride */,
1763     112 /* output pixel stride */,
1764     w194.data(), w195.data(),
1765     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1766     0 /* flags */,
1767     &caches,
1768     &op66);
1769   if (status != xnn_status_success) {
1770     std::cerr << "failed to create operation #66" << std::endl;
1771     return ExecutionPlan();
1772   }
1773   operators.emplace_back(op66, xnn_delete_operator);
1774 
1775   xnn_operator_t op67 = nullptr;
1776   status = xnn_create_convolution2d_nhwc_f32(
1777     0 /* top padding */, 0 /* right padding */,
1778     0 /* bottom padding */, 0 /* left padding */,
1779     1 /* kernel height */, 1 /* kernel width */,
1780     1 /* subsampling height */, 1 /* subsampling width */,
1781     1 /* dilation_height */, 1 /* dilation_width */,
1782     1 /* groups */,
1783     112 /* input channels per group */,
1784     672 /* output_channels_per_group */,
1785     112 /* input pixel stride */,
1786     672 /* output pixel stride */,
1787     w196.data(), w197.data(),
1788     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1789     0 /* flags */,
1790     &caches,
1791     &op67);
1792   if (status != xnn_status_success) {
1793     std::cerr << "failed to create operation #67" << std::endl;
1794     return ExecutionPlan();
1795   }
1796   operators.emplace_back(op67, xnn_delete_operator);
1797 
1798   xnn_operator_t op68 = nullptr;
1799   status = xnn_create_hardswish_nc_f32(
1800     672 /* channels */,
1801     672 /* input stride */,
1802     672 /* output stride */,
1803     0 /* flags */,
1804     &op68);
1805   if (status != xnn_status_success) {
1806     std::cerr << "failed to create operation #68" << std::endl;
1807     return ExecutionPlan();
1808   }
1809   operators.emplace_back(op68, xnn_delete_operator);
1810 
1811   xnn_operator_t op69 = nullptr;
1812   status = xnn_create_convolution2d_nhwc_f32(
1813     1 /* top padding */, 1 /* right padding */,
1814     1 /* bottom padding */, 1 /* left padding */,
1815     3 /* kernel height */, 3 /* kernel width */,
1816     1 /* subsampling height */, 1 /* subsampling width */,
1817     1 /* dilation_height */, 1 /* dilation_width */,
1818     672 /* groups */,
1819     1 /* input channels per group */,
1820     1 /* output_channels_per_group */,
1821     672 /* input pixel stride */,
1822     672 /* output pixel stride */,
1823     w198.data(), w199.data(),
1824     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1825     0 /* flags */,
1826     &caches,
1827     &op69);
1828   if (status != xnn_status_success) {
1829     std::cerr << "failed to create operation #69" << std::endl;
1830     return ExecutionPlan();
1831   }
1832   operators.emplace_back(op69, xnn_delete_operator);
1833 
1834   xnn_operator_t op70 = nullptr;
1835   status = xnn_create_hardswish_nc_f32(
1836     672 /* channels */,
1837     672 /* input stride */,
1838     672 /* output stride */,
1839     0 /* flags */,
1840     &op70);
1841   if (status != xnn_status_success) {
1842     std::cerr << "failed to create operation #70" << std::endl;
1843     return ExecutionPlan();
1844   }
1845   operators.emplace_back(op70, xnn_delete_operator);
1846 
1847   xnn_operator_t op71 = nullptr;
1848   status = xnn_create_global_average_pooling_nwc_f32(
1849     672 /* channels */, 672 /* input stride */, 672 /* output stride */,
1850     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
1851     0 /* flags */,
1852     &op71);
1853   if (status != xnn_status_success) {
1854     std::cerr << "failed to create operation #71" << std::endl;
1855     return ExecutionPlan();
1856   }
1857   operators.emplace_back(op71, xnn_delete_operator);
1858 
1859   xnn_operator_t op72 = nullptr;
1860   status = xnn_create_convolution2d_nhwc_f32(
1861     0 /* top padding */, 0 /* right padding */,
1862     0 /* bottom padding */, 0 /* left padding */,
1863     1 /* kernel height */, 1 /* kernel width */,
1864     1 /* subsampling height */, 1 /* subsampling width */,
1865     1 /* dilation_height */, 1 /* dilation_width */,
1866     1 /* groups */,
1867     672 /* input channels per group */,
1868     168 /* output_channels_per_group */,
1869     672 /* input pixel stride */,
1870     168 /* output pixel stride */,
1871     w200.data(), w201.data(),
1872     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1873     0 /* flags */,
1874     &caches,
1875     &op72);
1876   if (status != xnn_status_success) {
1877     std::cerr << "failed to create operation #72" << std::endl;
1878     return ExecutionPlan();
1879   }
1880   operators.emplace_back(op72, xnn_delete_operator);
1881 
1882   xnn_operator_t op73 = nullptr;
1883   status = xnn_create_convolution2d_nhwc_f32(
1884     0 /* top padding */, 0 /* right padding */,
1885     0 /* bottom padding */, 0 /* left padding */,
1886     1 /* kernel height */, 1 /* kernel width */,
1887     1 /* subsampling height */, 1 /* subsampling width */,
1888     1 /* dilation_height */, 1 /* dilation_width */,
1889     1 /* groups */,
1890     168 /* input channels per group */,
1891     672 /* output_channels_per_group */,
1892     168 /* input pixel stride */,
1893     672 /* output pixel stride */,
1894     w202.data(), w203.data(),
1895     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
1896     0 /* flags */,
1897     &caches,
1898     &op73);
1899   if (status != xnn_status_success) {
1900     std::cerr << "failed to create operation #73" << std::endl;
1901     return ExecutionPlan();
1902   }
1903   operators.emplace_back(op73, xnn_delete_operator);
1904 
1905   xnn_operator_t op74 = nullptr;
1906   status = xnn_create_multiply_nd_f32(
1907     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1908     0 /* flags */,
1909     &op74);
1910   if (status != xnn_status_success) {
1911     std::cerr << "failed to create operation #74" << std::endl;
1912     return ExecutionPlan();
1913   }
1914   operators.emplace_back(op74, xnn_delete_operator);
1915 
1916   xnn_operator_t op75 = nullptr;
1917   status = xnn_create_convolution2d_nhwc_f32(
1918     0 /* top padding */, 0 /* right padding */,
1919     0 /* bottom padding */, 0 /* left padding */,
1920     1 /* kernel height */, 1 /* kernel width */,
1921     1 /* subsampling height */, 1 /* subsampling width */,
1922     1 /* dilation_height */, 1 /* dilation_width */,
1923     1 /* groups */,
1924     672 /* input channels per group */,
1925     112 /* output_channels_per_group */,
1926     672 /* input pixel stride */,
1927     112 /* output pixel stride */,
1928     w204.data(), w205.data(),
1929     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1930     0 /* flags */,
1931     &caches,
1932     &op75);
1933   if (status != xnn_status_success) {
1934     std::cerr << "failed to create operation #75" << std::endl;
1935     return ExecutionPlan();
1936   }
1937   operators.emplace_back(op75, xnn_delete_operator);
1938 
1939   xnn_operator_t op76 = nullptr;
1940   status = xnn_create_add_nd_f32(
1941     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1942     0 /* flags */,
1943     &op76);
1944   if (status != xnn_status_success) {
1945     std::cerr << "failed to create operation #76" << std::endl;
1946     return ExecutionPlan();
1947   }
1948   operators.emplace_back(op76, xnn_delete_operator);
1949 
1950   xnn_operator_t op77 = nullptr;
1951   status = xnn_create_convolution2d_nhwc_f32(
1952     0 /* top padding */, 0 /* right padding */,
1953     0 /* bottom padding */, 0 /* left padding */,
1954     1 /* kernel height */, 1 /* kernel width */,
1955     1 /* subsampling height */, 1 /* subsampling width */,
1956     1 /* dilation_height */, 1 /* dilation_width */,
1957     1 /* groups */,
1958     112 /* input channels per group */,
1959     672 /* output_channels_per_group */,
1960     112 /* input pixel stride */,
1961     672 /* output pixel stride */,
1962     w206.data(), w207.data(),
1963     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
1964     0 /* flags */,
1965     &caches,
1966     &op77);
1967   if (status != xnn_status_success) {
1968     std::cerr << "failed to create operation #77" << std::endl;
1969     return ExecutionPlan();
1970   }
1971   operators.emplace_back(op77, xnn_delete_operator);
1972 
1973   xnn_operator_t op78 = nullptr;
1974   status = xnn_create_hardswish_nc_f32(
1975     672 /* channels */,
1976     672 /* input stride */,
1977     672 /* output stride */,
1978     0 /* flags */,
1979     &op78);
1980   if (status != xnn_status_success) {
1981     std::cerr << "failed to create operation #78" << std::endl;
1982     return ExecutionPlan();
1983   }
1984   operators.emplace_back(op78, xnn_delete_operator);
1985 
1986   xnn_operator_t op79 = nullptr;
1987   status = xnn_create_convolution2d_nhwc_f32(
1988     1 /* top padding */, 2 /* right padding */,
1989     2 /* bottom padding */, 1 /* left padding */,
1990     5 /* kernel height */, 5 /* kernel width */,
1991     2 /* subsampling height */, 2 /* subsampling width */,
1992     1 /* dilation_height */, 1 /* dilation_width */,
1993     672 /* groups */,
1994     1 /* input channels per group */,
1995     1 /* output_channels_per_group */,
1996     672 /* input pixel stride */,
1997     672 /* output pixel stride */,
1998     w208.data(), w209.data(),
1999     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2000     0 /* flags */,
2001     &caches,
2002     &op79);
2003   if (status != xnn_status_success) {
2004     std::cerr << "failed to create operation #79" << std::endl;
2005     return ExecutionPlan();
2006   }
2007   operators.emplace_back(op79, xnn_delete_operator);
2008 
2009   xnn_operator_t op80 = nullptr;
2010   status = xnn_create_hardswish_nc_f32(
2011     672 /* channels */,
2012     672 /* input stride */,
2013     672 /* output stride */,
2014     0 /* flags */,
2015     &op80);
2016   if (status != xnn_status_success) {
2017     std::cerr << "failed to create operation #80" << std::endl;
2018     return ExecutionPlan();
2019   }
2020   operators.emplace_back(op80, xnn_delete_operator);
2021 
2022   xnn_operator_t op81 = nullptr;
2023   status = xnn_create_global_average_pooling_nwc_f32(
2024     672 /* channels */, 672 /* input stride */, 672 /* output stride */,
2025     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
2026     0 /* flags */,
2027     &op81);
2028   if (status != xnn_status_success) {
2029     std::cerr << "failed to create operation #81" << std::endl;
2030     return ExecutionPlan();
2031   }
2032   operators.emplace_back(op81, xnn_delete_operator);
2033 
2034   xnn_operator_t op82 = nullptr;
2035   status = xnn_create_convolution2d_nhwc_f32(
2036     0 /* top padding */, 0 /* right padding */,
2037     0 /* bottom padding */, 0 /* left padding */,
2038     1 /* kernel height */, 1 /* kernel width */,
2039     1 /* subsampling height */, 1 /* subsampling width */,
2040     1 /* dilation_height */, 1 /* dilation_width */,
2041     1 /* groups */,
2042     672 /* input channels per group */,
2043     168 /* output_channels_per_group */,
2044     672 /* input pixel stride */,
2045     168 /* output pixel stride */,
2046     w210.data(), w211.data(),
2047     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2048     0 /* flags */,
2049     &caches,
2050     &op82);
2051   if (status != xnn_status_success) {
2052     std::cerr << "failed to create operation #82" << std::endl;
2053     return ExecutionPlan();
2054   }
2055   operators.emplace_back(op82, xnn_delete_operator);
2056 
2057   xnn_operator_t op83 = nullptr;
2058   status = xnn_create_convolution2d_nhwc_f32(
2059     0 /* top padding */, 0 /* right padding */,
2060     0 /* bottom padding */, 0 /* left padding */,
2061     1 /* kernel height */, 1 /* kernel width */,
2062     1 /* subsampling height */, 1 /* subsampling width */,
2063     1 /* dilation_height */, 1 /* dilation_width */,
2064     1 /* groups */,
2065     168 /* input channels per group */,
2066     672 /* output_channels_per_group */,
2067     168 /* input pixel stride */,
2068     672 /* output pixel stride */,
2069     w212.data(), w213.data(),
2070     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
2071     0 /* flags */,
2072     &caches,
2073     &op83);
2074   if (status != xnn_status_success) {
2075     std::cerr << "failed to create operation #83" << std::endl;
2076     return ExecutionPlan();
2077   }
2078   operators.emplace_back(op83, xnn_delete_operator);
2079 
2080   xnn_operator_t op84 = nullptr;
2081   status = xnn_create_multiply_nd_f32(
2082     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2083     0 /* flags */,
2084     &op84);
2085   if (status != xnn_status_success) {
2086     std::cerr << "failed to create operation #84" << std::endl;
2087     return ExecutionPlan();
2088   }
2089   operators.emplace_back(op84, xnn_delete_operator);
2090 
2091   xnn_operator_t op85 = nullptr;
2092   status = xnn_create_convolution2d_nhwc_f32(
2093     0 /* top padding */, 0 /* right padding */,
2094     0 /* bottom padding */, 0 /* left padding */,
2095     1 /* kernel height */, 1 /* kernel width */,
2096     1 /* subsampling height */, 1 /* subsampling width */,
2097     1 /* dilation_height */, 1 /* dilation_width */,
2098     1 /* groups */,
2099     672 /* input channels per group */,
2100     160 /* output_channels_per_group */,
2101     672 /* input pixel stride */,
2102     160 /* output pixel stride */,
2103     w214.data(), w215.data(),
2104     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2105     0 /* flags */,
2106     &caches,
2107     &op85);
2108   if (status != xnn_status_success) {
2109     std::cerr << "failed to create operation #85" << std::endl;
2110     return ExecutionPlan();
2111   }
2112   operators.emplace_back(op85, xnn_delete_operator);
2113 
2114   xnn_operator_t op86 = nullptr;
2115   status = xnn_create_convolution2d_nhwc_f32(
2116     0 /* top padding */, 0 /* right padding */,
2117     0 /* bottom padding */, 0 /* left padding */,
2118     1 /* kernel height */, 1 /* kernel width */,
2119     1 /* subsampling height */, 1 /* subsampling width */,
2120     1 /* dilation_height */, 1 /* dilation_width */,
2121     1 /* groups */,
2122     160 /* input channels per group */,
2123     960 /* output_channels_per_group */,
2124     160 /* input pixel stride */,
2125     960 /* output pixel stride */,
2126     w216.data(), w217.data(),
2127     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2128     0 /* flags */,
2129     &caches,
2130     &op86);
2131   if (status != xnn_status_success) {
2132     std::cerr << "failed to create operation #86" << std::endl;
2133     return ExecutionPlan();
2134   }
2135   operators.emplace_back(op86, xnn_delete_operator);
2136 
2137   xnn_operator_t op87 = nullptr;
2138   status = xnn_create_hardswish_nc_f32(
2139     960 /* channels */,
2140     960 /* input stride */,
2141     960 /* output stride */,
2142     0 /* flags */,
2143     &op87);
2144   if (status != xnn_status_success) {
2145     std::cerr << "failed to create operation #87" << std::endl;
2146     return ExecutionPlan();
2147   }
2148   operators.emplace_back(op87, xnn_delete_operator);
2149 
2150   xnn_operator_t op88 = nullptr;
2151   status = xnn_create_convolution2d_nhwc_f32(
2152     2 /* top padding */, 2 /* right padding */,
2153     2 /* bottom padding */, 2 /* left padding */,
2154     5 /* kernel height */, 5 /* kernel width */,
2155     1 /* subsampling height */, 1 /* subsampling width */,
2156     1 /* dilation_height */, 1 /* dilation_width */,
2157     960 /* groups */,
2158     1 /* input channels per group */,
2159     1 /* output_channels_per_group */,
2160     960 /* input pixel stride */,
2161     960 /* output pixel stride */,
2162     w218.data(), w219.data(),
2163     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2164     0 /* flags */,
2165     &caches,
2166     &op88);
2167   if (status != xnn_status_success) {
2168     std::cerr << "failed to create operation #88" << std::endl;
2169     return ExecutionPlan();
2170   }
2171   operators.emplace_back(op88, xnn_delete_operator);
2172 
2173   xnn_operator_t op89 = nullptr;
2174   status = xnn_create_hardswish_nc_f32(
2175     960 /* channels */,
2176     960 /* input stride */,
2177     960 /* output stride */,
2178     0 /* flags */,
2179     &op89);
2180   if (status != xnn_status_success) {
2181     std::cerr << "failed to create operation #89" << std::endl;
2182     return ExecutionPlan();
2183   }
2184   operators.emplace_back(op89, xnn_delete_operator);
2185 
2186   xnn_operator_t op90 = nullptr;
2187   status = xnn_create_global_average_pooling_nwc_f32(
2188     960 /* channels */, 960 /* input stride */, 960 /* output stride */,
2189     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
2190     0 /* flags */,
2191     &op90);
2192   if (status != xnn_status_success) {
2193     std::cerr << "failed to create operation #90" << std::endl;
2194     return ExecutionPlan();
2195   }
2196   operators.emplace_back(op90, xnn_delete_operator);
2197 
2198   xnn_operator_t op91 = nullptr;
2199   status = xnn_create_convolution2d_nhwc_f32(
2200     0 /* top padding */, 0 /* right padding */,
2201     0 /* bottom padding */, 0 /* left padding */,
2202     1 /* kernel height */, 1 /* kernel width */,
2203     1 /* subsampling height */, 1 /* subsampling width */,
2204     1 /* dilation_height */, 1 /* dilation_width */,
2205     1 /* groups */,
2206     960 /* input channels per group */,
2207     240 /* output_channels_per_group */,
2208     960 /* input pixel stride */,
2209     240 /* output pixel stride */,
2210     w220.data(), w221.data(),
2211     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2212     0 /* flags */,
2213     &caches,
2214     &op91);
2215   if (status != xnn_status_success) {
2216     std::cerr << "failed to create operation #91" << std::endl;
2217     return ExecutionPlan();
2218   }
2219   operators.emplace_back(op91, xnn_delete_operator);
2220 
2221   xnn_operator_t op92 = nullptr;
2222   status = xnn_create_convolution2d_nhwc_f32(
2223     0 /* top padding */, 0 /* right padding */,
2224     0 /* bottom padding */, 0 /* left padding */,
2225     1 /* kernel height */, 1 /* kernel width */,
2226     1 /* subsampling height */, 1 /* subsampling width */,
2227     1 /* dilation_height */, 1 /* dilation_width */,
2228     1 /* groups */,
2229     240 /* input channels per group */,
2230     960 /* output_channels_per_group */,
2231     240 /* input pixel stride */,
2232     960 /* output pixel stride */,
2233     w222.data(), w223.data(),
2234     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
2235     0 /* flags */,
2236     &caches,
2237     &op92);
2238   if (status != xnn_status_success) {
2239     std::cerr << "failed to create operation #92" << std::endl;
2240     return ExecutionPlan();
2241   }
2242   operators.emplace_back(op92, xnn_delete_operator);
2243 
2244   xnn_operator_t op93 = nullptr;
2245   status = xnn_create_multiply_nd_f32(
2246     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2247     0 /* flags */,
2248     &op93);
2249   if (status != xnn_status_success) {
2250     std::cerr << "failed to create operation #93" << std::endl;
2251     return ExecutionPlan();
2252   }
2253   operators.emplace_back(op93, xnn_delete_operator);
2254 
2255   xnn_operator_t op94 = nullptr;
2256   status = xnn_create_convolution2d_nhwc_f32(
2257     0 /* top padding */, 0 /* right padding */,
2258     0 /* bottom padding */, 0 /* left padding */,
2259     1 /* kernel height */, 1 /* kernel width */,
2260     1 /* subsampling height */, 1 /* subsampling width */,
2261     1 /* dilation_height */, 1 /* dilation_width */,
2262     1 /* groups */,
2263     960 /* input channels per group */,
2264     160 /* output_channels_per_group */,
2265     960 /* input pixel stride */,
2266     160 /* output pixel stride */,
2267     w224.data(), w225.data(),
2268     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2269     0 /* flags */,
2270     &caches,
2271     &op94);
2272   if (status != xnn_status_success) {
2273     std::cerr << "failed to create operation #94" << std::endl;
2274     return ExecutionPlan();
2275   }
2276   operators.emplace_back(op94, xnn_delete_operator);
2277 
2278   xnn_operator_t op95 = nullptr;
2279   status = xnn_create_add_nd_f32(
2280     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2281     0 /* flags */,
2282     &op95);
2283   if (status != xnn_status_success) {
2284     std::cerr << "failed to create operation #95" << std::endl;
2285     return ExecutionPlan();
2286   }
2287   operators.emplace_back(op95, xnn_delete_operator);
2288 
2289   xnn_operator_t op96 = nullptr;
2290   status = xnn_create_convolution2d_nhwc_f32(
2291     0 /* top padding */, 0 /* right padding */,
2292     0 /* bottom padding */, 0 /* left padding */,
2293     1 /* kernel height */, 1 /* kernel width */,
2294     1 /* subsampling height */, 1 /* subsampling width */,
2295     1 /* dilation_height */, 1 /* dilation_width */,
2296     1 /* groups */,
2297     160 /* input channels per group */,
2298     960 /* output_channels_per_group */,
2299     160 /* input pixel stride */,
2300     960 /* output pixel stride */,
2301     w226.data(), w227.data(),
2302     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2303     0 /* flags */,
2304     &caches,
2305     &op96);
2306   if (status != xnn_status_success) {
2307     std::cerr << "failed to create operation #96" << std::endl;
2308     return ExecutionPlan();
2309   }
2310   operators.emplace_back(op96, xnn_delete_operator);
2311 
2312   xnn_operator_t op97 = nullptr;
2313   status = xnn_create_hardswish_nc_f32(
2314     960 /* channels */,
2315     960 /* input stride */,
2316     960 /* output stride */,
2317     0 /* flags */,
2318     &op97);
2319   if (status != xnn_status_success) {
2320     std::cerr << "failed to create operation #97" << std::endl;
2321     return ExecutionPlan();
2322   }
2323   operators.emplace_back(op97, xnn_delete_operator);
2324 
2325   xnn_operator_t op98 = nullptr;
2326   status = xnn_create_convolution2d_nhwc_f32(
2327     2 /* top padding */, 2 /* right padding */,
2328     2 /* bottom padding */, 2 /* left padding */,
2329     5 /* kernel height */, 5 /* kernel width */,
2330     1 /* subsampling height */, 1 /* subsampling width */,
2331     1 /* dilation_height */, 1 /* dilation_width */,
2332     960 /* groups */,
2333     1 /* input channels per group */,
2334     1 /* output_channels_per_group */,
2335     960 /* input pixel stride */,
2336     960 /* output pixel stride */,
2337     w228.data(), w229.data(),
2338     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2339     0 /* flags */,
2340     &caches,
2341     &op98);
2342   if (status != xnn_status_success) {
2343     std::cerr << "failed to create operation #98" << std::endl;
2344     return ExecutionPlan();
2345   }
2346   operators.emplace_back(op98, xnn_delete_operator);
2347 
2348   xnn_operator_t op99 = nullptr;
2349   status = xnn_create_hardswish_nc_f32(
2350     960 /* channels */,
2351     960 /* input stride */,
2352     960 /* output stride */,
2353     0 /* flags */,
2354     &op99);
2355   if (status != xnn_status_success) {
2356     std::cerr << "failed to create operation #99" << std::endl;
2357     return ExecutionPlan();
2358   }
2359   operators.emplace_back(op99, xnn_delete_operator);
2360 
2361   xnn_operator_t op100 = nullptr;
2362   status = xnn_create_global_average_pooling_nwc_f32(
2363     960 /* channels */, 960 /* input stride */, 960 /* output stride */,
2364     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
2365     0 /* flags */,
2366     &op100);
2367   if (status != xnn_status_success) {
2368     std::cerr << "failed to create operation #100" << std::endl;
2369     return ExecutionPlan();
2370   }
2371   operators.emplace_back(op100, xnn_delete_operator);
2372 
2373   xnn_operator_t op101 = nullptr;
2374   status = xnn_create_convolution2d_nhwc_f32(
2375     0 /* top padding */, 0 /* right padding */,
2376     0 /* bottom padding */, 0 /* left padding */,
2377     1 /* kernel height */, 1 /* kernel width */,
2378     1 /* subsampling height */, 1 /* subsampling width */,
2379     1 /* dilation_height */, 1 /* dilation_width */,
2380     1 /* groups */,
2381     960 /* input channels per group */,
2382     240 /* output_channels_per_group */,
2383     960 /* input pixel stride */,
2384     240 /* output pixel stride */,
2385     w230.data(), w231.data(),
2386     0.0f /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2387     0 /* flags */,
2388     &caches,
2389     &op101);
2390   if (status != xnn_status_success) {
2391     std::cerr << "failed to create operation #101" << std::endl;
2392     return ExecutionPlan();
2393   }
2394   operators.emplace_back(op101, xnn_delete_operator);
2395 
2396   xnn_operator_t op102 = nullptr;
2397   status = xnn_create_convolution2d_nhwc_f32(
2398     0 /* top padding */, 0 /* right padding */,
2399     0 /* bottom padding */, 0 /* left padding */,
2400     1 /* kernel height */, 1 /* kernel width */,
2401     1 /* subsampling height */, 1 /* subsampling width */,
2402     1 /* dilation_height */, 1 /* dilation_width */,
2403     1 /* groups */,
2404     240 /* input channels per group */,
2405     960 /* output_channels_per_group */,
2406     240 /* input pixel stride */,
2407     960 /* output pixel stride */,
2408     w232.data(), w233.data(),
2409     0.0f /* output min */, +0x1.00014Fp+0 /* output max */,
2410     0 /* flags */,
2411     &caches,
2412     &op102);
2413   if (status != xnn_status_success) {
2414     std::cerr << "failed to create operation #102" << std::endl;
2415     return ExecutionPlan();
2416   }
2417   operators.emplace_back(op102, xnn_delete_operator);
2418 
2419   xnn_operator_t op103 = nullptr;
2420   status = xnn_create_multiply_nd_f32(
2421     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2422     0 /* flags */,
2423     &op103);
2424   if (status != xnn_status_success) {
2425     std::cerr << "failed to create operation #103" << std::endl;
2426     return ExecutionPlan();
2427   }
2428   operators.emplace_back(op103, xnn_delete_operator);
2429 
2430   xnn_operator_t op104 = nullptr;
2431   status = xnn_create_convolution2d_nhwc_f32(
2432     0 /* top padding */, 0 /* right padding */,
2433     0 /* bottom padding */, 0 /* left padding */,
2434     1 /* kernel height */, 1 /* kernel width */,
2435     1 /* subsampling height */, 1 /* subsampling width */,
2436     1 /* dilation_height */, 1 /* dilation_width */,
2437     1 /* groups */,
2438     960 /* input channels per group */,
2439     160 /* output_channels_per_group */,
2440     960 /* input pixel stride */,
2441     160 /* output pixel stride */,
2442     w234.data(), w235.data(),
2443     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2444     0 /* flags */,
2445     &caches,
2446     &op104);
2447   if (status != xnn_status_success) {
2448     std::cerr << "failed to create operation #104" << std::endl;
2449     return ExecutionPlan();
2450   }
2451   operators.emplace_back(op104, xnn_delete_operator);
2452 
2453   xnn_operator_t op105 = nullptr;
2454   status = xnn_create_add_nd_f32(
2455     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2456     0 /* flags */,
2457     &op105);
2458   if (status != xnn_status_success) {
2459     std::cerr << "failed to create operation #105" << std::endl;
2460     return ExecutionPlan();
2461   }
2462   operators.emplace_back(op105, xnn_delete_operator);
2463 
2464   xnn_operator_t op106 = nullptr;
2465   status = xnn_create_convolution2d_nhwc_f32(
2466     0 /* top padding */, 0 /* right padding */,
2467     0 /* bottom padding */, 0 /* left padding */,
2468     1 /* kernel height */, 1 /* kernel width */,
2469     1 /* subsampling height */, 1 /* subsampling width */,
2470     1 /* dilation_height */, 1 /* dilation_width */,
2471     1 /* groups */,
2472     160 /* input channels per group */,
2473     960 /* output_channels_per_group */,
2474     160 /* input pixel stride */,
2475     960 /* output pixel stride */,
2476     w236.data(), w237.data(),
2477     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2478     0 /* flags */,
2479     &caches,
2480     &op106);
2481   if (status != xnn_status_success) {
2482     std::cerr << "failed to create operation #106" << std::endl;
2483     return ExecutionPlan();
2484   }
2485   operators.emplace_back(op106, xnn_delete_operator);
2486 
2487   xnn_operator_t op107 = nullptr;
2488   status = xnn_create_hardswish_nc_f32(
2489     960 /* channels */,
2490     960 /* input stride */,
2491     960 /* output stride */,
2492     0 /* flags */,
2493     &op107);
2494   if (status != xnn_status_success) {
2495     std::cerr << "failed to create operation #107" << std::endl;
2496     return ExecutionPlan();
2497   }
2498   operators.emplace_back(op107, xnn_delete_operator);
2499 
2500   xnn_operator_t op108 = nullptr;
2501   status = xnn_create_global_average_pooling_nwc_f32(
2502     960 /* channels */, 960 /* input stride */, 960 /* output stride */,
2503     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
2504     0 /* flags */,
2505     &op108);
2506   if (status != xnn_status_success) {
2507     std::cerr << "failed to create operation #108" << std::endl;
2508     return ExecutionPlan();
2509   }
2510   operators.emplace_back(op108, xnn_delete_operator);
2511 
2512   xnn_operator_t op109 = nullptr;
2513   status = xnn_create_convolution2d_nhwc_f32(
2514     0 /* top padding */, 0 /* right padding */,
2515     0 /* bottom padding */, 0 /* left padding */,
2516     1 /* kernel height */, 1 /* kernel width */,
2517     1 /* subsampling height */, 1 /* subsampling width */,
2518     1 /* dilation_height */, 1 /* dilation_width */,
2519     1 /* groups */,
2520     960 /* input channels per group */,
2521     1280 /* output_channels_per_group */,
2522     960 /* input pixel stride */,
2523     1280 /* output pixel stride */,
2524     w238.data(), w239.data(),
2525     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2526     0 /* flags */,
2527     &caches,
2528     &op109);
2529   if (status != xnn_status_success) {
2530     std::cerr << "failed to create operation #109" << std::endl;
2531     return ExecutionPlan();
2532   }
2533   operators.emplace_back(op109, xnn_delete_operator);
2534 
2535   xnn_operator_t op110 = nullptr;
2536   status = xnn_create_hardswish_nc_f32(
2537     1280 /* channels */,
2538     1280 /* input stride */,
2539     1280 /* output stride */,
2540     0 /* flags */,
2541     &op110);
2542   if (status != xnn_status_success) {
2543     std::cerr << "failed to create operation #110" << std::endl;
2544     return ExecutionPlan();
2545   }
2546   operators.emplace_back(op110, xnn_delete_operator);
2547 
2548   xnn_operator_t op111 = nullptr;
2549   status = xnn_create_global_average_pooling_nwc_f32(
2550     1280 /* channels */, 1280 /* input stride */, 1280 /* output stride */,
2551     -std::numeric_limits<float>::infinity(), std::numeric_limits<float>::infinity(),
2552     0 /* flags */,
2553     &op111);
2554   if (status != xnn_status_success) {
2555     std::cerr << "failed to create operation #111" << std::endl;
2556     return ExecutionPlan();
2557   }
2558   operators.emplace_back(op111, xnn_delete_operator);
2559 
2560   xnn_operator_t op112 = nullptr;
2561   status = xnn_create_convolution2d_nhwc_f32(
2562     0 /* top padding */, 0 /* right padding */,
2563     0 /* bottom padding */, 0 /* left padding */,
2564     1 /* kernel height */, 1 /* kernel width */,
2565     1 /* subsampling height */, 1 /* subsampling width */,
2566     1 /* dilation_height */, 1 /* dilation_width */,
2567     1 /* groups */,
2568     1280 /* input channels per group */,
2569     1001 /* output_channels_per_group */,
2570     1280 /* input pixel stride */,
2571     1001 /* output pixel stride */,
2572     w240.data(), w241.data(),
2573     -std::numeric_limits<float>::infinity() /* output min */, std::numeric_limits<float>::infinity() /* output max */,
2574     0 /* flags */,
2575     &caches,
2576     &op112);
2577   if (status != xnn_status_success) {
2578     std::cerr << "failed to create operation #112" << std::endl;
2579     return ExecutionPlan();
2580   }
2581   operators.emplace_back(op112, xnn_delete_operator);
2582 
2583 #if XNN_PLATFORM_JIT
2584   xnn_finalize_code_memory(&code_cache.cache.code);
2585 #endif
2586 
2587   status = xnn_setup_convolution2d_nhwc_f32(
2588     op0,
2589     1 /* batch size */, 224 /* input height */, 224 /* input width */,
2590     v0.data() /* input */, v1.data() /* output */,
2591     threadpool /* threadpool */);
2592   if (status != xnn_status_success) {
2593     std::cerr << "failed to setup operation #0" << std::endl;
2594     return ExecutionPlan();
2595   }
2596 
2597   status = xnn_setup_hardswish_nc_f32(
2598     op1,
2599     12544 /* batch size */,
2600     v1.data() /* input */, v2.data() /* output */,
2601     threadpool /* threadpool */);
2602   if (status != xnn_status_success) {
2603     std::cerr << "failed to setup operation #1" << std::endl;
2604     return ExecutionPlan();
2605   }
2606 
2607   status = xnn_setup_convolution2d_nhwc_f32(
2608     op2,
2609     1 /* batch size */, 112 /* input height */, 112 /* input width */,
2610     v2.data() /* input */, v3.data() /* output */,
2611     threadpool /* threadpool */);
2612   if (status != xnn_status_success) {
2613     std::cerr << "failed to setup operation #2" << std::endl;
2614     return ExecutionPlan();
2615   }
2616 
2617   status = xnn_setup_convolution2d_nhwc_f32(
2618     op3,
2619     1 /* batch size */, 112 /* input height */, 112 /* input width */,
2620     v3.data() /* input */, v4.data() /* output */,
2621     threadpool /* threadpool */);
2622   if (status != xnn_status_success) {
2623     std::cerr << "failed to setup operation #3" << std::endl;
2624     return ExecutionPlan();
2625   }
2626 
2627   {
2628     const size_t a_shape[] = { 1, 112, 112, 16 };
2629     const size_t b_shape[] = { 1, 112, 112, 16 };
2630     status = xnn_setup_add_nd_f32(
2631       op4,
2632       4, a_shape, 4, b_shape,
2633       v4.data() /* a */, v2.data() /* b */, v5.data() /* output */,
2634       threadpool /* threadpool */);
2635   }
2636   if (status != xnn_status_success) {
2637     std::cerr << "failed to setup operation #4" << std::endl;
2638     return ExecutionPlan();
2639   }
2640 
2641   status = xnn_setup_convolution2d_nhwc_f32(
2642     op5,
2643     1 /* batch size */, 112 /* input height */, 112 /* input width */,
2644     v5.data() /* input */, v6.data() /* output */,
2645     threadpool /* threadpool */);
2646   if (status != xnn_status_success) {
2647     std::cerr << "failed to setup operation #5" << std::endl;
2648     return ExecutionPlan();
2649   }
2650 
2651   status = xnn_setup_convolution2d_nhwc_f32(
2652     op6,
2653     1 /* batch size */, 112 /* input height */, 112 /* input width */,
2654     v6.data() /* input */, v7.data() /* output */,
2655     threadpool /* threadpool */);
2656   if (status != xnn_status_success) {
2657     std::cerr << "failed to setup operation #6" << std::endl;
2658     return ExecutionPlan();
2659   }
2660 
2661   status = xnn_setup_convolution2d_nhwc_f32(
2662     op7,
2663     1 /* batch size */, 56 /* input height */, 56 /* input width */,
2664     v7.data() /* input */, v8.data() /* output */,
2665     threadpool /* threadpool */);
2666   if (status != xnn_status_success) {
2667     std::cerr << "failed to setup operation #7" << std::endl;
2668     return ExecutionPlan();
2669   }
2670 
2671   status = xnn_setup_convolution2d_nhwc_f32(
2672     op8,
2673     1 /* batch size */, 56 /* input height */, 56 /* input width */,
2674     v8.data() /* input */, v9.data() /* output */,
2675     threadpool /* threadpool */);
2676   if (status != xnn_status_success) {
2677     std::cerr << "failed to setup operation #8" << std::endl;
2678     return ExecutionPlan();
2679   }
2680 
2681   status = xnn_setup_convolution2d_nhwc_f32(
2682     op9,
2683     1 /* batch size */, 56 /* input height */, 56 /* input width */,
2684     v9.data() /* input */, v10.data() /* output */,
2685     threadpool /* threadpool */);
2686   if (status != xnn_status_success) {
2687     std::cerr << "failed to setup operation #9" << std::endl;
2688     return ExecutionPlan();
2689   }
2690 
2691   status = xnn_setup_convolution2d_nhwc_f32(
2692     op10,
2693     1 /* batch size */, 56 /* input height */, 56 /* input width */,
2694     v10.data() /* input */, v11.data() /* output */,
2695     threadpool /* threadpool */);
2696   if (status != xnn_status_success) {
2697     std::cerr << "failed to setup operation #10" << std::endl;
2698     return ExecutionPlan();
2699   }
2700 
2701   {
2702     const size_t a_shape[] = { 1, 56, 56, 24 };
2703     const size_t b_shape[] = { 1, 56, 56, 24 };
2704     status = xnn_setup_add_nd_f32(
2705       op11,
2706       4, a_shape, 4, b_shape,
2707       v11.data() /* a */, v8.data() /* b */, v12.data() /* output */,
2708       threadpool /* threadpool */);
2709   }
2710   if (status != xnn_status_success) {
2711     std::cerr << "failed to setup operation #11" << std::endl;
2712     return ExecutionPlan();
2713   }
2714 
2715   status = xnn_setup_convolution2d_nhwc_f32(
2716     op12,
2717     1 /* batch size */, 56 /* input height */, 56 /* input width */,
2718     v12.data() /* input */, v13.data() /* output */,
2719     threadpool /* threadpool */);
2720   if (status != xnn_status_success) {
2721     std::cerr << "failed to setup operation #12" << std::endl;
2722     return ExecutionPlan();
2723   }
2724 
2725   status = xnn_setup_convolution2d_nhwc_f32(
2726     op13,
2727     1 /* batch size */, 56 /* input height */, 56 /* input width */,
2728     v13.data() /* input */, v14.data() /* output */,
2729     threadpool /* threadpool */);
2730   if (status != xnn_status_success) {
2731     std::cerr << "failed to setup operation #13" << std::endl;
2732     return ExecutionPlan();
2733   }
2734 
2735   status = xnn_setup_global_average_pooling_nwc_f32(
2736     op14,
2737     1 /* batch size */, 784 /* width */,
2738     v14.data() /* input */, v15.data() /* output */,
2739     threadpool /* threadpool */);
2740   if (status != xnn_status_success) {
2741     std::cerr << "failed to setup operation #14" << std::endl;
2742     return ExecutionPlan();
2743   }
2744 
2745   status = xnn_setup_convolution2d_nhwc_f32(
2746     op15,
2747     1 /* batch size */, 1 /* input height */, 1 /* input width */,
2748     v15.data() /* input */, v16.data() /* output */,
2749     threadpool /* threadpool */);
2750   if (status != xnn_status_success) {
2751     std::cerr << "failed to setup operation #15" << std::endl;
2752     return ExecutionPlan();
2753   }
2754 
2755   status = xnn_setup_convolution2d_nhwc_f32(
2756     op16,
2757     1 /* batch size */, 1 /* input height */, 1 /* input width */,
2758     v16.data() /* input */, v17.data() /* output */,
2759     threadpool /* threadpool */);
2760   if (status != xnn_status_success) {
2761     std::cerr << "failed to setup operation #16" << std::endl;
2762     return ExecutionPlan();
2763   }
2764 
2765   {
2766     const size_t a_shape[] = { 1, 28, 28, 72 };
2767     const size_t b_shape[] = { 1, 1, 1, 72 };
2768     status = xnn_setup_multiply_nd_f32(
2769       op17,
2770       4, a_shape, 4, b_shape,
2771       v14.data() /* a */, v17.data() /* b */, v18.data() /* output */,
2772       threadpool /* threadpool */);
2773   }
2774   if (status != xnn_status_success) {
2775     std::cerr << "failed to setup operation #17" << std::endl;
2776     return ExecutionPlan();
2777   }
2778 
2779   status = xnn_setup_convolution2d_nhwc_f32(
2780     op18,
2781     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2782     v18.data() /* input */, v19.data() /* output */,
2783     threadpool /* threadpool */);
2784   if (status != xnn_status_success) {
2785     std::cerr << "failed to setup operation #18" << std::endl;
2786     return ExecutionPlan();
2787   }
2788 
2789   status = xnn_setup_convolution2d_nhwc_f32(
2790     op19,
2791     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2792     v19.data() /* input */, v20.data() /* output */,
2793     threadpool /* threadpool */);
2794   if (status != xnn_status_success) {
2795     std::cerr << "failed to setup operation #19" << std::endl;
2796     return ExecutionPlan();
2797   }
2798 
2799   status = xnn_setup_convolution2d_nhwc_f32(
2800     op20,
2801     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2802     v20.data() /* input */, v21.data() /* output */,
2803     threadpool /* threadpool */);
2804   if (status != xnn_status_success) {
2805     std::cerr << "failed to setup operation #20" << std::endl;
2806     return ExecutionPlan();
2807   }
2808 
2809   status = xnn_setup_global_average_pooling_nwc_f32(
2810     op21,
2811     1 /* batch size */, 784 /* width */,
2812     v21.data() /* input */, v22.data() /* output */,
2813     threadpool /* threadpool */);
2814   if (status != xnn_status_success) {
2815     std::cerr << "failed to setup operation #21" << std::endl;
2816     return ExecutionPlan();
2817   }
2818 
2819   status = xnn_setup_convolution2d_nhwc_f32(
2820     op22,
2821     1 /* batch size */, 1 /* input height */, 1 /* input width */,
2822     v22.data() /* input */, v23.data() /* output */,
2823     threadpool /* threadpool */);
2824   if (status != xnn_status_success) {
2825     std::cerr << "failed to setup operation #22" << std::endl;
2826     return ExecutionPlan();
2827   }
2828 
2829   status = xnn_setup_convolution2d_nhwc_f32(
2830     op23,
2831     1 /* batch size */, 1 /* input height */, 1 /* input width */,
2832     v23.data() /* input */, v24.data() /* output */,
2833     threadpool /* threadpool */);
2834   if (status != xnn_status_success) {
2835     std::cerr << "failed to setup operation #23" << std::endl;
2836     return ExecutionPlan();
2837   }
2838 
2839   {
2840     const size_t a_shape[] = { 1, 28, 28, 120 };
2841     const size_t b_shape[] = { 1, 1, 1, 120 };
2842     status = xnn_setup_multiply_nd_f32(
2843       op24,
2844       4, a_shape, 4, b_shape,
2845       v21.data() /* a */, v24.data() /* b */, v25.data() /* output */,
2846       threadpool /* threadpool */);
2847   }
2848   if (status != xnn_status_success) {
2849     std::cerr << "failed to setup operation #24" << std::endl;
2850     return ExecutionPlan();
2851   }
2852 
2853   status = xnn_setup_convolution2d_nhwc_f32(
2854     op25,
2855     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2856     v25.data() /* input */, v26.data() /* output */,
2857     threadpool /* threadpool */);
2858   if (status != xnn_status_success) {
2859     std::cerr << "failed to setup operation #25" << std::endl;
2860     return ExecutionPlan();
2861   }
2862 
2863   {
2864     const size_t a_shape[] = { 1, 28, 28, 40 };
2865     const size_t b_shape[] = { 1, 28, 28, 40 };
2866     status = xnn_setup_add_nd_f32(
2867       op26,
2868       4, a_shape, 4, b_shape,
2869       v26.data() /* a */, v19.data() /* b */, v27.data() /* output */,
2870       threadpool /* threadpool */);
2871   }
2872   if (status != xnn_status_success) {
2873     std::cerr << "failed to setup operation #26" << std::endl;
2874     return ExecutionPlan();
2875   }
2876 
2877   status = xnn_setup_convolution2d_nhwc_f32(
2878     op27,
2879     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2880     v27.data() /* input */, v28.data() /* output */,
2881     threadpool /* threadpool */);
2882   if (status != xnn_status_success) {
2883     std::cerr << "failed to setup operation #27" << std::endl;
2884     return ExecutionPlan();
2885   }
2886 
2887   status = xnn_setup_convolution2d_nhwc_f32(
2888     op28,
2889     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2890     v28.data() /* input */, v29.data() /* output */,
2891     threadpool /* threadpool */);
2892   if (status != xnn_status_success) {
2893     std::cerr << "failed to setup operation #28" << std::endl;
2894     return ExecutionPlan();
2895   }
2896 
2897   status = xnn_setup_global_average_pooling_nwc_f32(
2898     op29,
2899     1 /* batch size */, 784 /* width */,
2900     v29.data() /* input */, v30.data() /* output */,
2901     threadpool /* threadpool */);
2902   if (status != xnn_status_success) {
2903     std::cerr << "failed to setup operation #29" << std::endl;
2904     return ExecutionPlan();
2905   }
2906 
2907   status = xnn_setup_convolution2d_nhwc_f32(
2908     op30,
2909     1 /* batch size */, 1 /* input height */, 1 /* input width */,
2910     v30.data() /* input */, v31.data() /* output */,
2911     threadpool /* threadpool */);
2912   if (status != xnn_status_success) {
2913     std::cerr << "failed to setup operation #30" << std::endl;
2914     return ExecutionPlan();
2915   }
2916 
2917   status = xnn_setup_convolution2d_nhwc_f32(
2918     op31,
2919     1 /* batch size */, 1 /* input height */, 1 /* input width */,
2920     v31.data() /* input */, v32.data() /* output */,
2921     threadpool /* threadpool */);
2922   if (status != xnn_status_success) {
2923     std::cerr << "failed to setup operation #31" << std::endl;
2924     return ExecutionPlan();
2925   }
2926 
2927   {
2928     const size_t a_shape[] = { 1, 28, 28, 120 };
2929     const size_t b_shape[] = { 1, 1, 1, 120 };
2930     status = xnn_setup_multiply_nd_f32(
2931       op32,
2932       4, a_shape, 4, b_shape,
2933       v29.data() /* a */, v32.data() /* b */, v33.data() /* output */,
2934       threadpool /* threadpool */);
2935   }
2936   if (status != xnn_status_success) {
2937     std::cerr << "failed to setup operation #32" << std::endl;
2938     return ExecutionPlan();
2939   }
2940 
2941   status = xnn_setup_convolution2d_nhwc_f32(
2942     op33,
2943     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2944     v33.data() /* input */, v34.data() /* output */,
2945     threadpool /* threadpool */);
2946   if (status != xnn_status_success) {
2947     std::cerr << "failed to setup operation #33" << std::endl;
2948     return ExecutionPlan();
2949   }
2950 
2951   {
2952     const size_t a_shape[] = { 1, 28, 28, 40 };
2953     const size_t b_shape[] = { 1, 28, 28, 40 };
2954     status = xnn_setup_add_nd_f32(
2955       op34,
2956       4, a_shape, 4, b_shape,
2957       v34.data() /* a */, v27.data() /* b */, v35.data() /* output */,
2958       threadpool /* threadpool */);
2959   }
2960   if (status != xnn_status_success) {
2961     std::cerr << "failed to setup operation #34" << std::endl;
2962     return ExecutionPlan();
2963   }
2964 
2965   status = xnn_setup_convolution2d_nhwc_f32(
2966     op35,
2967     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2968     v35.data() /* input */, v36.data() /* output */,
2969     threadpool /* threadpool */);
2970   if (status != xnn_status_success) {
2971     std::cerr << "failed to setup operation #35" << std::endl;
2972     return ExecutionPlan();
2973   }
2974 
2975   status = xnn_setup_hardswish_nc_f32(
2976     op36,
2977     784 /* batch size */,
2978     v36.data() /* input */, v37.data() /* output */,
2979     threadpool /* threadpool */);
2980   if (status != xnn_status_success) {
2981     std::cerr << "failed to setup operation #36" << std::endl;
2982     return ExecutionPlan();
2983   }
2984 
2985   status = xnn_setup_convolution2d_nhwc_f32(
2986     op37,
2987     1 /* batch size */, 28 /* input height */, 28 /* input width */,
2988     v37.data() /* input */, v38.data() /* output */,
2989     threadpool /* threadpool */);
2990   if (status != xnn_status_success) {
2991     std::cerr << "failed to setup operation #37" << std::endl;
2992     return ExecutionPlan();
2993   }
2994 
2995   status = xnn_setup_hardswish_nc_f32(
2996     op38,
2997     196 /* batch size */,
2998     v38.data() /* input */, v39.data() /* output */,
2999     threadpool /* threadpool */);
3000   if (status != xnn_status_success) {
3001     std::cerr << "failed to setup operation #38" << std::endl;
3002     return ExecutionPlan();
3003   }
3004 
3005   status = xnn_setup_convolution2d_nhwc_f32(
3006     op39,
3007     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3008     v39.data() /* input */, v40.data() /* output */,
3009     threadpool /* threadpool */);
3010   if (status != xnn_status_success) {
3011     std::cerr << "failed to setup operation #39" << std::endl;
3012     return ExecutionPlan();
3013   }
3014 
3015   status = xnn_setup_convolution2d_nhwc_f32(
3016     op40,
3017     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3018     v40.data() /* input */, v41.data() /* output */,
3019     threadpool /* threadpool */);
3020   if (status != xnn_status_success) {
3021     std::cerr << "failed to setup operation #40" << std::endl;
3022     return ExecutionPlan();
3023   }
3024 
3025   status = xnn_setup_hardswish_nc_f32(
3026     op41,
3027     196 /* batch size */,
3028     v41.data() /* input */, v42.data() /* output */,
3029     threadpool /* threadpool */);
3030   if (status != xnn_status_success) {
3031     std::cerr << "failed to setup operation #41" << std::endl;
3032     return ExecutionPlan();
3033   }
3034 
3035   status = xnn_setup_convolution2d_nhwc_f32(
3036     op42,
3037     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3038     v42.data() /* input */, v43.data() /* output */,
3039     threadpool /* threadpool */);
3040   if (status != xnn_status_success) {
3041     std::cerr << "failed to setup operation #42" << std::endl;
3042     return ExecutionPlan();
3043   }
3044 
3045   status = xnn_setup_hardswish_nc_f32(
3046     op43,
3047     196 /* batch size */,
3048     v43.data() /* input */, v44.data() /* output */,
3049     threadpool /* threadpool */);
3050   if (status != xnn_status_success) {
3051     std::cerr << "failed to setup operation #43" << std::endl;
3052     return ExecutionPlan();
3053   }
3054 
3055   status = xnn_setup_convolution2d_nhwc_f32(
3056     op44,
3057     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3058     v44.data() /* input */, v45.data() /* output */,
3059     threadpool /* threadpool */);
3060   if (status != xnn_status_success) {
3061     std::cerr << "failed to setup operation #44" << std::endl;
3062     return ExecutionPlan();
3063   }
3064 
3065   {
3066     const size_t a_shape[] = { 1, 14, 14, 80 };
3067     const size_t b_shape[] = { 1, 14, 14, 80 };
3068     status = xnn_setup_add_nd_f32(
3069       op45,
3070       4, a_shape, 4, b_shape,
3071       v45.data() /* a */, v40.data() /* b */, v46.data() /* output */,
3072       threadpool /* threadpool */);
3073   }
3074   if (status != xnn_status_success) {
3075     std::cerr << "failed to setup operation #45" << std::endl;
3076     return ExecutionPlan();
3077   }
3078 
3079   status = xnn_setup_convolution2d_nhwc_f32(
3080     op46,
3081     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3082     v46.data() /* input */, v47.data() /* output */,
3083     threadpool /* threadpool */);
3084   if (status != xnn_status_success) {
3085     std::cerr << "failed to setup operation #46" << std::endl;
3086     return ExecutionPlan();
3087   }
3088 
3089   status = xnn_setup_hardswish_nc_f32(
3090     op47,
3091     196 /* batch size */,
3092     v47.data() /* input */, v48.data() /* output */,
3093     threadpool /* threadpool */);
3094   if (status != xnn_status_success) {
3095     std::cerr << "failed to setup operation #47" << std::endl;
3096     return ExecutionPlan();
3097   }
3098 
3099   status = xnn_setup_convolution2d_nhwc_f32(
3100     op48,
3101     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3102     v48.data() /* input */, v49.data() /* output */,
3103     threadpool /* threadpool */);
3104   if (status != xnn_status_success) {
3105     std::cerr << "failed to setup operation #48" << std::endl;
3106     return ExecutionPlan();
3107   }
3108 
3109   status = xnn_setup_hardswish_nc_f32(
3110     op49,
3111     196 /* batch size */,
3112     v49.data() /* input */, v50.data() /* output */,
3113     threadpool /* threadpool */);
3114   if (status != xnn_status_success) {
3115     std::cerr << "failed to setup operation #49" << std::endl;
3116     return ExecutionPlan();
3117   }
3118 
3119   status = xnn_setup_convolution2d_nhwc_f32(
3120     op50,
3121     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3122     v50.data() /* input */, v51.data() /* output */,
3123     threadpool /* threadpool */);
3124   if (status != xnn_status_success) {
3125     std::cerr << "failed to setup operation #50" << std::endl;
3126     return ExecutionPlan();
3127   }
3128 
3129   {
3130     const size_t a_shape[] = { 1, 14, 14, 80 };
3131     const size_t b_shape[] = { 1, 14, 14, 80 };
3132     status = xnn_setup_add_nd_f32(
3133       op51,
3134       4, a_shape, 4, b_shape,
3135       v51.data() /* a */, v46.data() /* b */, v52.data() /* output */,
3136       threadpool /* threadpool */);
3137   }
3138   if (status != xnn_status_success) {
3139     std::cerr << "failed to setup operation #51" << std::endl;
3140     return ExecutionPlan();
3141   }
3142 
3143   status = xnn_setup_convolution2d_nhwc_f32(
3144     op52,
3145     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3146     v52.data() /* input */, v53.data() /* output */,
3147     threadpool /* threadpool */);
3148   if (status != xnn_status_success) {
3149     std::cerr << "failed to setup operation #52" << std::endl;
3150     return ExecutionPlan();
3151   }
3152 
3153   status = xnn_setup_hardswish_nc_f32(
3154     op53,
3155     196 /* batch size */,
3156     v53.data() /* input */, v54.data() /* output */,
3157     threadpool /* threadpool */);
3158   if (status != xnn_status_success) {
3159     std::cerr << "failed to setup operation #53" << std::endl;
3160     return ExecutionPlan();
3161   }
3162 
3163   status = xnn_setup_convolution2d_nhwc_f32(
3164     op54,
3165     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3166     v54.data() /* input */, v55.data() /* output */,
3167     threadpool /* threadpool */);
3168   if (status != xnn_status_success) {
3169     std::cerr << "failed to setup operation #54" << std::endl;
3170     return ExecutionPlan();
3171   }
3172 
3173   status = xnn_setup_hardswish_nc_f32(
3174     op55,
3175     196 /* batch size */,
3176     v55.data() /* input */, v56.data() /* output */,
3177     threadpool /* threadpool */);
3178   if (status != xnn_status_success) {
3179     std::cerr << "failed to setup operation #55" << std::endl;
3180     return ExecutionPlan();
3181   }
3182 
3183   status = xnn_setup_convolution2d_nhwc_f32(
3184     op56,
3185     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3186     v56.data() /* input */, v57.data() /* output */,
3187     threadpool /* threadpool */);
3188   if (status != xnn_status_success) {
3189     std::cerr << "failed to setup operation #56" << std::endl;
3190     return ExecutionPlan();
3191   }
3192 
3193   {
3194     const size_t a_shape[] = { 1, 14, 14, 80 };
3195     const size_t b_shape[] = { 1, 14, 14, 80 };
3196     status = xnn_setup_add_nd_f32(
3197       op57,
3198       4, a_shape, 4, b_shape,
3199       v57.data() /* a */, v52.data() /* b */, v58.data() /* output */,
3200       threadpool /* threadpool */);
3201   }
3202   if (status != xnn_status_success) {
3203     std::cerr << "failed to setup operation #57" << std::endl;
3204     return ExecutionPlan();
3205   }
3206 
3207   status = xnn_setup_convolution2d_nhwc_f32(
3208     op58,
3209     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3210     v58.data() /* input */, v59.data() /* output */,
3211     threadpool /* threadpool */);
3212   if (status != xnn_status_success) {
3213     std::cerr << "failed to setup operation #58" << std::endl;
3214     return ExecutionPlan();
3215   }
3216 
3217   status = xnn_setup_hardswish_nc_f32(
3218     op59,
3219     196 /* batch size */,
3220     v59.data() /* input */, v60.data() /* output */,
3221     threadpool /* threadpool */);
3222   if (status != xnn_status_success) {
3223     std::cerr << "failed to setup operation #59" << std::endl;
3224     return ExecutionPlan();
3225   }
3226 
3227   status = xnn_setup_convolution2d_nhwc_f32(
3228     op60,
3229     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3230     v60.data() /* input */, v61.data() /* output */,
3231     threadpool /* threadpool */);
3232   if (status != xnn_status_success) {
3233     std::cerr << "failed to setup operation #60" << std::endl;
3234     return ExecutionPlan();
3235   }
3236 
3237   status = xnn_setup_hardswish_nc_f32(
3238     op61,
3239     196 /* batch size */,
3240     v61.data() /* input */, v62.data() /* output */,
3241     threadpool /* threadpool */);
3242   if (status != xnn_status_success) {
3243     std::cerr << "failed to setup operation #61" << std::endl;
3244     return ExecutionPlan();
3245   }
3246 
3247   status = xnn_setup_global_average_pooling_nwc_f32(
3248     op62,
3249     1 /* batch size */, 196 /* width */,
3250     v62.data() /* input */, v63.data() /* output */,
3251     threadpool /* threadpool */);
3252   if (status != xnn_status_success) {
3253     std::cerr << "failed to setup operation #62" << std::endl;
3254     return ExecutionPlan();
3255   }
3256 
3257   status = xnn_setup_convolution2d_nhwc_f32(
3258     op63,
3259     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3260     v63.data() /* input */, v64.data() /* output */,
3261     threadpool /* threadpool */);
3262   if (status != xnn_status_success) {
3263     std::cerr << "failed to setup operation #63" << std::endl;
3264     return ExecutionPlan();
3265   }
3266 
3267   status = xnn_setup_convolution2d_nhwc_f32(
3268     op64,
3269     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3270     v64.data() /* input */, v65.data() /* output */,
3271     threadpool /* threadpool */);
3272   if (status != xnn_status_success) {
3273     std::cerr << "failed to setup operation #64" << std::endl;
3274     return ExecutionPlan();
3275   }
3276 
3277   {
3278     const size_t a_shape[] = { 1, 14, 14, 480 };
3279     const size_t b_shape[] = { 1, 1, 1, 480 };
3280     status = xnn_setup_multiply_nd_f32(
3281       op65,
3282       4, a_shape, 4, b_shape,
3283       v62.data() /* a */, v65.data() /* b */, v66.data() /* output */,
3284       threadpool /* threadpool */);
3285   }
3286   if (status != xnn_status_success) {
3287     std::cerr << "failed to setup operation #65" << std::endl;
3288     return ExecutionPlan();
3289   }
3290 
3291   status = xnn_setup_convolution2d_nhwc_f32(
3292     op66,
3293     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3294     v66.data() /* input */, v67.data() /* output */,
3295     threadpool /* threadpool */);
3296   if (status != xnn_status_success) {
3297     std::cerr << "failed to setup operation #66" << std::endl;
3298     return ExecutionPlan();
3299   }
3300 
3301   status = xnn_setup_convolution2d_nhwc_f32(
3302     op67,
3303     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3304     v67.data() /* input */, v68.data() /* output */,
3305     threadpool /* threadpool */);
3306   if (status != xnn_status_success) {
3307     std::cerr << "failed to setup operation #67" << std::endl;
3308     return ExecutionPlan();
3309   }
3310 
3311   status = xnn_setup_hardswish_nc_f32(
3312     op68,
3313     196 /* batch size */,
3314     v68.data() /* input */, v69.data() /* output */,
3315     threadpool /* threadpool */);
3316   if (status != xnn_status_success) {
3317     std::cerr << "failed to setup operation #68" << std::endl;
3318     return ExecutionPlan();
3319   }
3320 
3321   status = xnn_setup_convolution2d_nhwc_f32(
3322     op69,
3323     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3324     v69.data() /* input */, v70.data() /* output */,
3325     threadpool /* threadpool */);
3326   if (status != xnn_status_success) {
3327     std::cerr << "failed to setup operation #69" << std::endl;
3328     return ExecutionPlan();
3329   }
3330 
3331   status = xnn_setup_hardswish_nc_f32(
3332     op70,
3333     196 /* batch size */,
3334     v70.data() /* input */, v71.data() /* output */,
3335     threadpool /* threadpool */);
3336   if (status != xnn_status_success) {
3337     std::cerr << "failed to setup operation #70" << std::endl;
3338     return ExecutionPlan();
3339   }
3340 
3341   status = xnn_setup_global_average_pooling_nwc_f32(
3342     op71,
3343     1 /* batch size */, 196 /* width */,
3344     v71.data() /* input */, v72.data() /* output */,
3345     threadpool /* threadpool */);
3346   if (status != xnn_status_success) {
3347     std::cerr << "failed to setup operation #71" << std::endl;
3348     return ExecutionPlan();
3349   }
3350 
3351   status = xnn_setup_convolution2d_nhwc_f32(
3352     op72,
3353     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3354     v72.data() /* input */, v73.data() /* output */,
3355     threadpool /* threadpool */);
3356   if (status != xnn_status_success) {
3357     std::cerr << "failed to setup operation #72" << std::endl;
3358     return ExecutionPlan();
3359   }
3360 
3361   status = xnn_setup_convolution2d_nhwc_f32(
3362     op73,
3363     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3364     v73.data() /* input */, v74.data() /* output */,
3365     threadpool /* threadpool */);
3366   if (status != xnn_status_success) {
3367     std::cerr << "failed to setup operation #73" << std::endl;
3368     return ExecutionPlan();
3369   }
3370 
3371   {
3372     const size_t a_shape[] = { 1, 14, 14, 672 };
3373     const size_t b_shape[] = { 1, 1, 1, 672 };
3374     status = xnn_setup_multiply_nd_f32(
3375       op74,
3376       4, a_shape, 4, b_shape,
3377       v71.data() /* a */, v74.data() /* b */, v75.data() /* output */,
3378       threadpool /* threadpool */);
3379   }
3380   if (status != xnn_status_success) {
3381     std::cerr << "failed to setup operation #74" << std::endl;
3382     return ExecutionPlan();
3383   }
3384 
3385   status = xnn_setup_convolution2d_nhwc_f32(
3386     op75,
3387     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3388     v75.data() /* input */, v76.data() /* output */,
3389     threadpool /* threadpool */);
3390   if (status != xnn_status_success) {
3391     std::cerr << "failed to setup operation #75" << std::endl;
3392     return ExecutionPlan();
3393   }
3394 
3395   {
3396     const size_t a_shape[] = { 1, 14, 14, 112 };
3397     const size_t b_shape[] = { 1, 14, 14, 112 };
3398     status = xnn_setup_add_nd_f32(
3399       op76,
3400       4, a_shape, 4, b_shape,
3401       v76.data() /* a */, v67.data() /* b */, v77.data() /* output */,
3402       threadpool /* threadpool */);
3403   }
3404   if (status != xnn_status_success) {
3405     std::cerr << "failed to setup operation #76" << std::endl;
3406     return ExecutionPlan();
3407   }
3408 
3409   status = xnn_setup_convolution2d_nhwc_f32(
3410     op77,
3411     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3412     v77.data() /* input */, v78.data() /* output */,
3413     threadpool /* threadpool */);
3414   if (status != xnn_status_success) {
3415     std::cerr << "failed to setup operation #77" << std::endl;
3416     return ExecutionPlan();
3417   }
3418 
3419   status = xnn_setup_hardswish_nc_f32(
3420     op78,
3421     196 /* batch size */,
3422     v78.data() /* input */, v79.data() /* output */,
3423     threadpool /* threadpool */);
3424   if (status != xnn_status_success) {
3425     std::cerr << "failed to setup operation #78" << std::endl;
3426     return ExecutionPlan();
3427   }
3428 
3429   status = xnn_setup_convolution2d_nhwc_f32(
3430     op79,
3431     1 /* batch size */, 14 /* input height */, 14 /* input width */,
3432     v79.data() /* input */, v80.data() /* output */,
3433     threadpool /* threadpool */);
3434   if (status != xnn_status_success) {
3435     std::cerr << "failed to setup operation #79" << std::endl;
3436     return ExecutionPlan();
3437   }
3438 
3439   status = xnn_setup_hardswish_nc_f32(
3440     op80,
3441     49 /* batch size */,
3442     v80.data() /* input */, v81.data() /* output */,
3443     threadpool /* threadpool */);
3444   if (status != xnn_status_success) {
3445     std::cerr << "failed to setup operation #80" << std::endl;
3446     return ExecutionPlan();
3447   }
3448 
3449   status = xnn_setup_global_average_pooling_nwc_f32(
3450     op81,
3451     1 /* batch size */, 49 /* width */,
3452     v81.data() /* input */, v82.data() /* output */,
3453     threadpool /* threadpool */);
3454   if (status != xnn_status_success) {
3455     std::cerr << "failed to setup operation #81" << std::endl;
3456     return ExecutionPlan();
3457   }
3458 
3459   status = xnn_setup_convolution2d_nhwc_f32(
3460     op82,
3461     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3462     v82.data() /* input */, v83.data() /* output */,
3463     threadpool /* threadpool */);
3464   if (status != xnn_status_success) {
3465     std::cerr << "failed to setup operation #82" << std::endl;
3466     return ExecutionPlan();
3467   }
3468 
3469   status = xnn_setup_convolution2d_nhwc_f32(
3470     op83,
3471     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3472     v83.data() /* input */, v84.data() /* output */,
3473     threadpool /* threadpool */);
3474   if (status != xnn_status_success) {
3475     std::cerr << "failed to setup operation #83" << std::endl;
3476     return ExecutionPlan();
3477   }
3478 
3479   {
3480     const size_t a_shape[] = { 1, 7, 7, 672 };
3481     const size_t b_shape[] = { 1, 1, 1, 672 };
3482     status = xnn_setup_multiply_nd_f32(
3483       op84,
3484       4, a_shape, 4, b_shape,
3485       v81.data() /* a */, v84.data() /* b */, v85.data() /* output */,
3486       threadpool /* threadpool */);
3487   }
3488   if (status != xnn_status_success) {
3489     std::cerr << "failed to setup operation #84" << std::endl;
3490     return ExecutionPlan();
3491   }
3492 
3493   status = xnn_setup_convolution2d_nhwc_f32(
3494     op85,
3495     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3496     v85.data() /* input */, v86.data() /* output */,
3497     threadpool /* threadpool */);
3498   if (status != xnn_status_success) {
3499     std::cerr << "failed to setup operation #85" << std::endl;
3500     return ExecutionPlan();
3501   }
3502 
3503   status = xnn_setup_convolution2d_nhwc_f32(
3504     op86,
3505     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3506     v86.data() /* input */, v87.data() /* output */,
3507     threadpool /* threadpool */);
3508   if (status != xnn_status_success) {
3509     std::cerr << "failed to setup operation #86" << std::endl;
3510     return ExecutionPlan();
3511   }
3512 
3513   status = xnn_setup_hardswish_nc_f32(
3514     op87,
3515     49 /* batch size */,
3516     v87.data() /* input */, v88.data() /* output */,
3517     threadpool /* threadpool */);
3518   if (status != xnn_status_success) {
3519     std::cerr << "failed to setup operation #87" << std::endl;
3520     return ExecutionPlan();
3521   }
3522 
3523   status = xnn_setup_convolution2d_nhwc_f32(
3524     op88,
3525     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3526     v88.data() /* input */, v89.data() /* output */,
3527     threadpool /* threadpool */);
3528   if (status != xnn_status_success) {
3529     std::cerr << "failed to setup operation #88" << std::endl;
3530     return ExecutionPlan();
3531   }
3532 
3533   status = xnn_setup_hardswish_nc_f32(
3534     op89,
3535     49 /* batch size */,
3536     v89.data() /* input */, v90.data() /* output */,
3537     threadpool /* threadpool */);
3538   if (status != xnn_status_success) {
3539     std::cerr << "failed to setup operation #89" << std::endl;
3540     return ExecutionPlan();
3541   }
3542 
3543   status = xnn_setup_global_average_pooling_nwc_f32(
3544     op90,
3545     1 /* batch size */, 49 /* width */,
3546     v90.data() /* input */, v91.data() /* output */,
3547     threadpool /* threadpool */);
3548   if (status != xnn_status_success) {
3549     std::cerr << "failed to setup operation #90" << std::endl;
3550     return ExecutionPlan();
3551   }
3552 
3553   status = xnn_setup_convolution2d_nhwc_f32(
3554     op91,
3555     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3556     v91.data() /* input */, v92.data() /* output */,
3557     threadpool /* threadpool */);
3558   if (status != xnn_status_success) {
3559     std::cerr << "failed to setup operation #91" << std::endl;
3560     return ExecutionPlan();
3561   }
3562 
3563   status = xnn_setup_convolution2d_nhwc_f32(
3564     op92,
3565     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3566     v92.data() /* input */, v93.data() /* output */,
3567     threadpool /* threadpool */);
3568   if (status != xnn_status_success) {
3569     std::cerr << "failed to setup operation #92" << std::endl;
3570     return ExecutionPlan();
3571   }
3572 
3573   {
3574     const size_t a_shape[] = { 1, 7, 7, 960 };
3575     const size_t b_shape[] = { 1, 1, 1, 960 };
3576     status = xnn_setup_multiply_nd_f32(
3577       op93,
3578       4, a_shape, 4, b_shape,
3579       v90.data() /* a */, v93.data() /* b */, v94.data() /* output */,
3580       threadpool /* threadpool */);
3581   }
3582   if (status != xnn_status_success) {
3583     std::cerr << "failed to setup operation #93" << std::endl;
3584     return ExecutionPlan();
3585   }
3586 
3587   status = xnn_setup_convolution2d_nhwc_f32(
3588     op94,
3589     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3590     v94.data() /* input */, v95.data() /* output */,
3591     threadpool /* threadpool */);
3592   if (status != xnn_status_success) {
3593     std::cerr << "failed to setup operation #94" << std::endl;
3594     return ExecutionPlan();
3595   }
3596 
3597   {
3598     const size_t a_shape[] = { 1, 7, 7, 160 };
3599     const size_t b_shape[] = { 1, 7, 7, 160 };
3600     status = xnn_setup_add_nd_f32(
3601       op95,
3602       4, a_shape, 4, b_shape,
3603       v95.data() /* a */, v86.data() /* b */, v96.data() /* output */,
3604       threadpool /* threadpool */);
3605   }
3606   if (status != xnn_status_success) {
3607     std::cerr << "failed to setup operation #95" << std::endl;
3608     return ExecutionPlan();
3609   }
3610 
3611   status = xnn_setup_convolution2d_nhwc_f32(
3612     op96,
3613     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3614     v96.data() /* input */, v97.data() /* output */,
3615     threadpool /* threadpool */);
3616   if (status != xnn_status_success) {
3617     std::cerr << "failed to setup operation #96" << std::endl;
3618     return ExecutionPlan();
3619   }
3620 
3621   status = xnn_setup_hardswish_nc_f32(
3622     op97,
3623     49 /* batch size */,
3624     v97.data() /* input */, v98.data() /* output */,
3625     threadpool /* threadpool */);
3626   if (status != xnn_status_success) {
3627     std::cerr << "failed to setup operation #97" << std::endl;
3628     return ExecutionPlan();
3629   }
3630 
3631   status = xnn_setup_convolution2d_nhwc_f32(
3632     op98,
3633     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3634     v98.data() /* input */, v99.data() /* output */,
3635     threadpool /* threadpool */);
3636   if (status != xnn_status_success) {
3637     std::cerr << "failed to setup operation #98" << std::endl;
3638     return ExecutionPlan();
3639   }
3640 
3641   status = xnn_setup_hardswish_nc_f32(
3642     op99,
3643     49 /* batch size */,
3644     v99.data() /* input */, v100.data() /* output */,
3645     threadpool /* threadpool */);
3646   if (status != xnn_status_success) {
3647     std::cerr << "failed to setup operation #99" << std::endl;
3648     return ExecutionPlan();
3649   }
3650 
3651   status = xnn_setup_global_average_pooling_nwc_f32(
3652     op100,
3653     1 /* batch size */, 49 /* width */,
3654     v100.data() /* input */, v101.data() /* output */,
3655     threadpool /* threadpool */);
3656   if (status != xnn_status_success) {
3657     std::cerr << "failed to setup operation #100" << std::endl;
3658     return ExecutionPlan();
3659   }
3660 
3661   status = xnn_setup_convolution2d_nhwc_f32(
3662     op101,
3663     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3664     v101.data() /* input */, v102.data() /* output */,
3665     threadpool /* threadpool */);
3666   if (status != xnn_status_success) {
3667     std::cerr << "failed to setup operation #101" << std::endl;
3668     return ExecutionPlan();
3669   }
3670 
3671   status = xnn_setup_convolution2d_nhwc_f32(
3672     op102,
3673     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3674     v102.data() /* input */, v103.data() /* output */,
3675     threadpool /* threadpool */);
3676   if (status != xnn_status_success) {
3677     std::cerr << "failed to setup operation #102" << std::endl;
3678     return ExecutionPlan();
3679   }
3680 
3681   {
3682     const size_t a_shape[] = { 1, 7, 7, 960 };
3683     const size_t b_shape[] = { 1, 1, 1, 960 };
3684     status = xnn_setup_multiply_nd_f32(
3685       op103,
3686       4, a_shape, 4, b_shape,
3687       v100.data() /* a */, v103.data() /* b */, v104.data() /* output */,
3688       threadpool /* threadpool */);
3689   }
3690   if (status != xnn_status_success) {
3691     std::cerr << "failed to setup operation #103" << std::endl;
3692     return ExecutionPlan();
3693   }
3694 
3695   status = xnn_setup_convolution2d_nhwc_f32(
3696     op104,
3697     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3698     v104.data() /* input */, v105.data() /* output */,
3699     threadpool /* threadpool */);
3700   if (status != xnn_status_success) {
3701     std::cerr << "failed to setup operation #104" << std::endl;
3702     return ExecutionPlan();
3703   }
3704 
3705   {
3706     const size_t a_shape[] = { 1, 7, 7, 160 };
3707     const size_t b_shape[] = { 1, 7, 7, 160 };
3708     status = xnn_setup_add_nd_f32(
3709       op105,
3710       4, a_shape, 4, b_shape,
3711       v105.data() /* a */, v96.data() /* b */, v106.data() /* output */,
3712       threadpool /* threadpool */);
3713   }
3714   if (status != xnn_status_success) {
3715     std::cerr << "failed to setup operation #105" << std::endl;
3716     return ExecutionPlan();
3717   }
3718 
3719   status = xnn_setup_convolution2d_nhwc_f32(
3720     op106,
3721     1 /* batch size */, 7 /* input height */, 7 /* input width */,
3722     v106.data() /* input */, v107.data() /* output */,
3723     threadpool /* threadpool */);
3724   if (status != xnn_status_success) {
3725     std::cerr << "failed to setup operation #106" << std::endl;
3726     return ExecutionPlan();
3727   }
3728 
3729   status = xnn_setup_hardswish_nc_f32(
3730     op107,
3731     49 /* batch size */,
3732     v107.data() /* input */, v108.data() /* output */,
3733     threadpool /* threadpool */);
3734   if (status != xnn_status_success) {
3735     std::cerr << "failed to setup operation #107" << std::endl;
3736     return ExecutionPlan();
3737   }
3738 
3739   status = xnn_setup_global_average_pooling_nwc_f32(
3740     op108,
3741     1 /* batch size */, 49 /* width */,
3742     v108.data() /* input */, v109.data() /* output */,
3743     threadpool /* threadpool */);
3744   if (status != xnn_status_success) {
3745     std::cerr << "failed to setup operation #108" << std::endl;
3746     return ExecutionPlan();
3747   }
3748 
3749   status = xnn_setup_convolution2d_nhwc_f32(
3750     op109,
3751     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3752     v109.data() /* input */, v110.data() /* output */,
3753     threadpool /* threadpool */);
3754   if (status != xnn_status_success) {
3755     std::cerr << "failed to setup operation #109" << std::endl;
3756     return ExecutionPlan();
3757   }
3758 
3759   status = xnn_setup_hardswish_nc_f32(
3760     op110,
3761     1 /* batch size */,
3762     v110.data() /* input */, v111.data() /* output */,
3763     threadpool /* threadpool */);
3764   if (status != xnn_status_success) {
3765     std::cerr << "failed to setup operation #110" << std::endl;
3766     return ExecutionPlan();
3767   }
3768 
3769   status = xnn_setup_global_average_pooling_nwc_f32(
3770     op111,
3771     1 /* batch size */, 1 /* width */,
3772     v111.data() /* input */, v112.data() /* output */,
3773     threadpool /* threadpool */);
3774   if (status != xnn_status_success) {
3775     std::cerr << "failed to setup operation #111" << std::endl;
3776     return ExecutionPlan();
3777   }
3778 
3779   status = xnn_setup_convolution2d_nhwc_f32(
3780     op112,
3781     1 /* batch size */, 1 /* input height */, 1 /* input width */,
3782     v112.data() /* input */, v113.data() /* output */,
3783     threadpool /* threadpool */);
3784   if (status != xnn_status_success) {
3785     std::cerr << "failed to setup operation #112" << std::endl;
3786     return ExecutionPlan();
3787   }
3788 
3789   #pragma clang diagnostic push
3790   #pragma clang diagnostic ignored "-Wpessimizing-move"
3791   return operators;
3792   #pragma clang diagnostic pop
3793 }
3794 
3795 }  // namespace models
3796