File size: 18,484 Bytes
5aca263
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
{
  "op": "ai.onnx.BitShift",
  "cases": [
    {
      "name": "simple_left_u32",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3] } },
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.SimpleLeft"
      }
    },
    {
      "name": "simple_right_u32",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3] } },
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.SimpleRight"
      }
    },
    {
      "name": "broadcast_y_left_u8",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [3, 2], "data": { "kind": "values", "values": [1, 2, 3, 4, 5, 6] } },
        "y": { "dtype": "uint8", "shape": [2], "data": { "kind": "values", "values": [1, 2] } }
      },
      "outputs": { "z": { "dtype": "uint8", "shape": [3, 2] } },
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.BroadcastYLeft_Uint8"
      }
    },
    {
      "name": "scalar_right_shift_by_width_u32",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [1], "data": { "kind": "values", "values": [1000] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [32, 33, 64] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3] } }
    },
    {
      "name": "left_shift_by_logical_width_u8",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [1, 2, 128, 255] } },
        "y": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [7, 8, 1, 9] } }
      },
      "outputs": { "z": { "dtype": "uint8", "shape": [4] } }
    },
    {
      "name": "backend_right_uint32_high_bits",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": {
          "dtype": "uint32",
          "shape": [5],
          "data": { "kind": "values", "values": [4294967295, 2147483648, 4000000001, 16777217, 305419896] }
        },
        "y": { "dtype": "uint32", "shape": [5], "data": { "kind": "values", "values": [1, 31, 4, 0, 8] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [5] } }
    },
    {
      "name": "backend_left_uint32_high_bits",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": {
          "dtype": "uint32",
          "shape": [5],
          "data": { "kind": "values", "values": [1, 3, 255, 16777217, 305419896] }
        },
        "y": { "dtype": "uint32", "shape": [5], "data": { "kind": "values", "values": [31, 30, 24, 8, 4] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [5] } }
    },
    {
      "name": "scalar_left_shift_by_width_u32",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [], "data": { "kind": "values", "values": [3] } },
        "y": { "dtype": "uint32", "shape": [4], "data": { "kind": "values", "values": [30, 31, 32, 33] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [4] } }
    },
    {
      "name": "right_shift_by_logical_width_u8",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [5], "data": { "kind": "values", "values": [255, 128, 64, 3, 1] } },
        "y": { "dtype": "uint8", "shape": [5], "data": { "kind": "values", "values": [7, 8, 6, 1, 9] } }
      },
      "outputs": { "z": { "dtype": "uint8", "shape": [5] } }
    },
    {
      "name": "ort_scalar_left_x_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.ScalarLeftX"
      },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [1], "data": { "kind": "values", "values": [16] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "ort_scalar_left_y_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.ScalarLeftY"
      },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [1], "data": { "kind": "values", "values": [1] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "ort_scalar_right_x_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.ScalarRightX"
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [1], "data": { "kind": "values", "values": [16] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "ort_scalar_right_y_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.ScalarRightY"
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [1], "data": { "kind": "values", "values": [1] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "ort_right_shift_by_bit_width_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.RightShiftByBitWidth_Uint32"
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [32, 32, 32] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "ort_right_shift_by_bit_width_u8",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.RightShiftByBitWidth_Uint32",
        "notes": "Same ORT shift-by-width invariant applied to logical uint8, whose bit width is 8."
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [255, 128, 1, 42] } },
        "y": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [8, 8, 8, 8] } }
      },
      "outputs": {
        "z": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [0, 0, 0, 0] }, "tolerance": 0 }
      }
    },
    {
      "name": "ort_left_shift_by_bit_width_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.LeftShiftByBitWidth_Uint64",
        "notes": "ORT covers uint64; this framework exercises the same shift-by-width semantics with supported uint32 storage."
      },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [4], "data": { "kind": "values", "values": [1000, 255, 1, 42] } },
        "y": { "dtype": "uint32", "shape": [4], "data": { "kind": "values", "values": [32, 32, 32, 32] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [4], "tolerance": 0 } }
    },
    {
      "name": "ort_left_shift_by_bit_width_u8",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.LeftShiftByBitWidth_Uint64",
        "notes": "ORT covers uint64; this framework exercises the same shift-by-width invariant with logical uint8."
      },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [255, 128, 1, 42] } },
        "y": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [8, 8, 8, 8] } }
      },
      "outputs": {
        "z": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [0, 0, 0, 0] }, "tolerance": 0 }
      }
    },
    {
      "name": "ort_right_shift_by_more_than_bit_width_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.RightShiftByMoreThanBitWidth_Uint64",
        "notes": "ORT covers uint64; this framework exercises the same shift-past-width semantics with supported uint32 storage."
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [2], "data": { "kind": "values", "values": [1000, 42] } },
        "y": { "dtype": "uint32", "shape": [2], "data": { "kind": "values", "values": [33, 64] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [2], "tolerance": 0 } }
    },
    {
      "name": "ort_right_shift_by_more_than_bit_width_u8",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.RightShiftByMoreThanBitWidth_Uint64",
        "notes": "ORT covers uint64; this framework exercises the same shift-past-width invariant with logical uint8."
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [255, 128, 1, 42] } },
        "y": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [9, 16, 31, 255] } }
      },
      "outputs": {
        "z": { "dtype": "uint8", "shape": [4], "data": { "kind": "values", "values": [0, 0, 0, 0] }, "tolerance": 0 }
      }
    },
    {
      "name": "ort_broadcast_x_right_u8",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.BroadcastXRight_Uint8"
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [2], "data": { "kind": "values", "values": [64, 32] } },
        "y": { "dtype": "uint8", "shape": [3, 2], "data": { "kind": "values", "values": [1, 2, 3, 4, 5, 6] } }
      },
      "outputs": { "z": { "dtype": "uint8", "shape": [3, 2], "tolerance": 0 } }
    },
    {
      "name": "ort_broadcast_x_right_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.BroadcastXRight",
        "notes": "ORT uses uint64 values; this framework exercises the same broadcast pattern with supported uint32 storage."
      },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [2], "data": { "kind": "values", "values": [64, 32] } },
        "y": { "dtype": "uint32", "shape": [3, 2], "data": { "kind": "values", "values": [1, 2, 3, 4, 5, 6] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3, 2], "tolerance": 0 } }
    },
    {
      "name": "ort_broadcast_y_left_u32",
      "provenance": {
        "source": "onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc",
        "test": "BitShiftOpTest.BroadcastYLeft",
        "notes": "ORT uses uint64 values; this framework exercises the same broadcast pattern with supported uint32 storage."
      },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3, 2], "data": { "kind": "values", "values": [1, 2, 3, 4, 5, 6] } },
        "y": { "dtype": "uint32", "shape": [2], "data": { "kind": "values", "values": [1, 2] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3, 2], "tolerance": 0 } }
    },
    {
      "name": "onnx_backend_bitshift_left_uint32",
      "provenance": { "source": "cmake/external/onnx/onnx/backend/test/data/node/test_bitshift_left_uint32" },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "onnx_backend_bitshift_right_uint32",
      "provenance": { "source": "cmake/external/onnx/onnx/backend/test/data/node/test_bitshift_right_uint32" },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint32", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "onnx_backend_bitshift_left_uint8",
      "provenance": { "source": "cmake/external/onnx/onnx/backend/test/data/node/test_bitshift_left_uint8" },
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint8", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint8", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "onnx_backend_bitshift_right_uint8",
      "provenance": { "source": "cmake/external/onnx/onnx/backend/test/data/node/test_bitshift_right_uint8" },
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [3], "data": { "kind": "values", "values": [16, 4, 1] } },
        "y": { "dtype": "uint8", "shape": [3], "data": { "kind": "values", "values": [1, 2, 3] } }
      },
      "outputs": { "z": { "dtype": "uint8", "shape": [3], "tolerance": 0 } }
    },
    {
      "name": "vec4_right_u32_with_overwide_shifts",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": {
          "dtype": "uint32",
          "shape": [8],
          "data": { "kind": "values", "values": [4294967295, 1024, 7, 4294967295, 256, 65535, 8, 12345678] }
        },
        "y": { "dtype": "uint32", "shape": [8], "data": { "kind": "values", "values": [4, 10, 1, 32, 33, 0, 3, 8] } }
      },
      "outputs": {
        "z": {
          "dtype": "uint32",
          "shape": [8],
          "data": { "kind": "values", "values": [268435455, 1, 3, 0, 0, 65535, 1, 48225] },
          "tolerance": 0
        }
      }
    },
    {
      "name": "vec4_right_u8_with_overwide_shifts",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": {
          "dtype": "uint8",
          "shape": [8],
          "data": { "kind": "values", "values": [255, 128, 200, 7, 255, 16, 3, 9] }
        },
        "y": { "dtype": "uint8", "shape": [8], "data": { "kind": "values", "values": [1, 7, 8, 0, 9, 2, 1, 3] } }
      },
      "outputs": {
        "z": {
          "dtype": "uint8",
          "shape": [8],
          "data": { "kind": "values", "values": [127, 1, 0, 7, 0, 4, 1, 1] },
          "tolerance": 0
        }
      }
    },
    {
      "name": "empty_input_zero_dim",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [0], "data": { "kind": "values", "values": [] } },
        "y": { "dtype": "uint32", "shape": [0], "data": { "kind": "values", "values": [] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [0], "tolerance": 0 } }
    },
    {
      "name": "broadcast_2d_u8_non_mult4_left",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint8", "shape": [1, 3], "data": { "kind": "values", "values": [1, 2, 3] } },
        "y": { "dtype": "uint8", "shape": [2, 1], "data": { "kind": "values", "values": [1, 2] } }
      },
      "outputs": {
        "z": {
          "dtype": "uint8",
          "shape": [2, 3],
          "tolerance": 0,
          "data": { "kind": "values", "values": [2, 4, 6, 4, 8, 12] }
        }
      }
    },
    {
      "name": "empty_z_broadcast_scalar_x",
      "attrs": { "direction": "RIGHT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [], "data": { "kind": "values", "values": [255] } },
        "y": { "dtype": "uint32", "shape": [0], "data": { "kind": "values", "values": [] } }
      },
      "outputs": {
        "z": { "dtype": "uint32", "shape": [0], "tolerance": 0, "data": { "kind": "values", "values": [] } }
      }
    },
    {
      "name": "rank7_broadcast_scalar_tail",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": { "dtype": "uint32", "shape": [2, 1, 2, 1, 2, 1, 3], "data": { "kind": "cycle", "values": [1, 3, 7, 15] } },
        "y": { "dtype": "uint32", "shape": [1, 2, 1, 2, 1, 2, 1], "data": { "kind": "cycle", "values": [0, 1, 2] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [2, 2, 2, 2, 2, 2, 3], "tolerance": 0 } }
    },
    {
      "name": "rank8_broadcast_alternating",
      "attrs": { "direction": "LEFT" },
      "inputs": {
        "x": {
          "dtype": "uint32",
          "shape": [2, 1, 2, 1, 2, 1, 2, 3],
          "data": { "kind": "cycle", "values": [1, 3, 5, 7] }
        },
        "y": { "dtype": "uint32", "shape": [1, 2, 1, 2, 1, 2, 1, 1], "data": { "kind": "cycle", "values": [0, 1, 2] } }
      },
      "outputs": { "z": { "dtype": "uint32", "shape": [2, 2, 2, 2, 2, 2, 2, 3], "tolerance": 0 } }
    }
  ]
}