glsl.es320.subgroupArithmetic.comp
Shader version: 320
Requested GL_KHR_shader_subgroup_arithmetic
Requested GL_KHR_shader_subgroup_basic
local_size = (8, 1, 1)
0:? Sequence
0:14  Function Definition: main( ( global void)
0:14    Function Parameters: 
0:16    Sequence
0:16      Sequence
0:16        move second child to first child ( temp highp uint)
0:16          'invocation' ( temp highp uint)
0:16          mod ( temp mediump uint)
0:16            add ( temp mediump uint)
0:16              'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
0:16              'gl_SubgroupSize' ( in mediump uint SubgroupSize)
0:16            Constant:
0:16              4 (const uint)
0:18      move second child to first child ( temp highp float)
0:18        direct index ( temp highp float)
0:18          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:18            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18              Constant:
0:18                0 (const int)
0:18            Constant:
0:18              0 (const int)
0:18          Constant:
0:18            0 (const int)
0:18        subgroupAdd ( global highp float)
0:18          direct index ( temp highp float)
0:18            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:18              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18                Constant:
0:18                  0 (const int)
0:18              Constant:
0:18                0 (const int)
0:18            Constant:
0:18              0 (const int)
0:19      move second child to first child ( temp highp 2-component vector of float)
0:19        vector swizzle ( temp highp 2-component vector of float)
0:19          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:19            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19              Constant:
0:19                0 (const int)
0:19            Constant:
0:19              0 (const int)
0:19          Sequence
0:19            Constant:
0:19              0 (const int)
0:19            Constant:
0:19              1 (const int)
0:19        subgroupAdd ( global highp 2-component vector of float)
0:19          vector swizzle ( temp highp 2-component vector of float)
0:19            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:19              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19                Constant:
0:19                  1 (const int)
0:19              Constant:
0:19                0 (const int)
0:19            Sequence
0:19              Constant:
0:19                0 (const int)
0:19              Constant:
0:19                1 (const int)
0:20      move second child to first child ( temp highp 3-component vector of float)
0:20        vector swizzle ( temp highp 3-component vector of float)
0:20          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:20            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20              Constant:
0:20                0 (const int)
0:20            Constant:
0:20              0 (const int)
0:20          Sequence
0:20            Constant:
0:20              0 (const int)
0:20            Constant:
0:20              1 (const int)
0:20            Constant:
0:20              2 (const int)
0:20        subgroupAdd ( global highp 3-component vector of float)
0:20          vector swizzle ( temp highp 3-component vector of float)
0:20            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:20              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20                Constant:
0:20                  2 (const int)
0:20              Constant:
0:20                0 (const int)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:20              Constant:
0:20                2 (const int)
0:21      move second child to first child ( temp highp 4-component vector of float)
0:21        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:21          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21            Constant:
0:21              0 (const int)
0:21          Constant:
0:21            0 (const int)
0:21        subgroupAdd ( global highp 4-component vector of float)
0:21          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:21            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21              Constant:
0:21                3 (const int)
0:21            Constant:
0:21              0 (const int)
0:23      move second child to first child ( temp highp int)
0:23        direct index ( temp highp int)
0:23          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:23            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              1 (const int)
0:23          Constant:
0:23            0 (const int)
0:23        subgroupAdd ( global highp int)
0:23          direct index ( temp highp int)
0:23            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:23              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23                Constant:
0:23                  0 (const int)
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              0 (const int)
0:24      move second child to first child ( temp highp 2-component vector of int)
0:24        vector swizzle ( temp highp 2-component vector of int)
0:24          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:24            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          Sequence
0:24            Constant:
0:24              0 (const int)
0:24            Constant:
0:24              1 (const int)
0:24        subgroupAdd ( global highp 2-component vector of int)
0:24          vector swizzle ( temp highp 2-component vector of int)
0:24            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:24              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24                Constant:
0:24                  1 (const int)
0:24              Constant:
0:24                1 (const int)
0:24            Sequence
0:24              Constant:
0:24                0 (const int)
0:24              Constant:
0:24                1 (const int)
0:25      move second child to first child ( temp highp 3-component vector of int)
0:25        vector swizzle ( temp highp 3-component vector of int)
0:25          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:25            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25              Constant:
0:25                1 (const int)
0:25            Constant:
0:25              1 (const int)
0:25          Sequence
0:25            Constant:
0:25              0 (const int)
0:25            Constant:
0:25              1 (const int)
0:25            Constant:
0:25              2 (const int)
0:25        subgroupAdd ( global highp 3-component vector of int)
0:25          vector swizzle ( temp highp 3-component vector of int)
0:25            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:25              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25                Constant:
0:25                  2 (const int)
0:25              Constant:
0:25                1 (const int)
0:25            Sequence
0:25              Constant:
0:25                0 (const int)
0:25              Constant:
0:25                1 (const int)
0:25              Constant:
0:25                2 (const int)
0:26      move second child to first child ( temp highp 4-component vector of int)
0:26        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:26          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26            Constant:
0:26              1 (const int)
0:26          Constant:
0:26            1 (const int)
0:26        subgroupAdd ( global highp 4-component vector of int)
0:26          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:26            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26              Constant:
0:26                3 (const int)
0:26            Constant:
0:26              1 (const int)
0:28      move second child to first child ( temp highp uint)
0:28        direct index ( temp highp uint)
0:28          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:28            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28              Constant:
0:28                2 (const int)
0:28            Constant:
0:28              2 (const int)
0:28          Constant:
0:28            0 (const int)
0:28        subgroupAdd ( global highp uint)
0:28          direct index ( temp highp uint)
0:28            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:28              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28                Constant:
0:28                  0 (const int)
0:28              Constant:
0:28                2 (const int)
0:28            Constant:
0:28              0 (const int)
0:29      move second child to first child ( temp highp 2-component vector of uint)
0:29        vector swizzle ( temp highp 2-component vector of uint)
0:29          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:29            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29              Constant:
0:29                2 (const int)
0:29            Constant:
0:29              2 (const int)
0:29          Sequence
0:29            Constant:
0:29              0 (const int)
0:29            Constant:
0:29              1 (const int)
0:29        subgroupAdd ( global highp 2-component vector of uint)
0:29          vector swizzle ( temp highp 2-component vector of uint)
0:29            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:29              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29                Constant:
0:29                  1 (const int)
0:29              Constant:
0:29                2 (const int)
0:29            Sequence
0:29              Constant:
0:29                0 (const int)
0:29              Constant:
0:29                1 (const int)
0:30      move second child to first child ( temp highp 3-component vector of uint)
0:30        vector swizzle ( temp highp 3-component vector of uint)
0:30          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:30            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30              Constant:
0:30                2 (const int)
0:30            Constant:
0:30              2 (const int)
0:30          Sequence
0:30            Constant:
0:30              0 (const int)
0:30            Constant:
0:30              1 (const int)
0:30            Constant:
0:30              2 (const int)
0:30        subgroupAdd ( global highp 3-component vector of uint)
0:30          vector swizzle ( temp highp 3-component vector of uint)
0:30            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:30              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30                Constant:
0:30                  2 (const int)
0:30              Constant:
0:30                2 (const int)
0:30            Sequence
0:30              Constant:
0:30                0 (const int)
0:30              Constant:
0:30                1 (const int)
0:30              Constant:
0:30                2 (const int)
0:31      move second child to first child ( temp highp 4-component vector of uint)
0:31        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:31          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31            Constant:
0:31              2 (const int)
0:31          Constant:
0:31            2 (const int)
0:31        subgroupAdd ( global highp 4-component vector of uint)
0:31          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:31            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31              Constant:
0:31                3 (const int)
0:31            Constant:
0:31              2 (const int)
0:33      move second child to first child ( temp highp float)
0:33        direct index ( temp highp float)
0:33          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:33            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33              Constant:
0:33                3 (const int)
0:33            Constant:
0:33              0 (const int)
0:33          Constant:
0:33            0 (const int)
0:33        subgroupMul ( global highp float)
0:33          direct index ( temp highp float)
0:33            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:33              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33                Constant:
0:33                  0 (const int)
0:33              Constant:
0:33                0 (const int)
0:33            Constant:
0:33              0 (const int)
0:34      move second child to first child ( temp highp 2-component vector of float)
0:34        vector swizzle ( temp highp 2-component vector of float)
0:34          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:34            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34              Constant:
0:34                3 (const int)
0:34            Constant:
0:34              0 (const int)
0:34          Sequence
0:34            Constant:
0:34              0 (const int)
0:34            Constant:
0:34              1 (const int)
0:34        subgroupMul ( global highp 2-component vector of float)
0:34          vector swizzle ( temp highp 2-component vector of float)
0:34            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:34              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34                Constant:
0:34                  1 (const int)
0:34              Constant:
0:34                0 (const int)
0:34            Sequence
0:34              Constant:
0:34                0 (const int)
0:34              Constant:
0:34                1 (const int)
0:35      move second child to first child ( temp highp 3-component vector of float)
0:35        vector swizzle ( temp highp 3-component vector of float)
0:35          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:35            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35              Constant:
0:35                3 (const int)
0:35            Constant:
0:35              0 (const int)
0:35          Sequence
0:35            Constant:
0:35              0 (const int)
0:35            Constant:
0:35              1 (const int)
0:35            Constant:
0:35              2 (const int)
0:35        subgroupMul ( global highp 3-component vector of float)
0:35          vector swizzle ( temp highp 3-component vector of float)
0:35            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:35              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35                Constant:
0:35                  2 (const int)
0:35              Constant:
0:35                0 (const int)
0:35            Sequence
0:35              Constant:
0:35                0 (const int)
0:35              Constant:
0:35                1 (const int)
0:35              Constant:
0:35                2 (const int)
0:36      move second child to first child ( temp highp 4-component vector of float)
0:36        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:36          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36            Constant:
0:36              3 (const int)
0:36          Constant:
0:36            0 (const int)
0:36        subgroupMul ( global highp 4-component vector of float)
0:36          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:36            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36              Constant:
0:36                3 (const int)
0:36            Constant:
0:36              0 (const int)
0:38      move second child to first child ( temp highp int)
0:38        direct index ( temp highp int)
0:38          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:38            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38              Constant:
0:38                0 (const int)
0:38            Constant:
0:38              1 (const int)
0:38          Constant:
0:38            0 (const int)
0:38        subgroupMul ( global highp int)
0:38          direct index ( temp highp int)
0:38            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:38              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38                Constant:
0:38                  0 (const int)
0:38              Constant:
0:38                1 (const int)
0:38            Constant:
0:38              0 (const int)
0:39      move second child to first child ( temp highp 2-component vector of int)
0:39        vector swizzle ( temp highp 2-component vector of int)
0:39          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:39            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39              Constant:
0:39                0 (const int)
0:39            Constant:
0:39              1 (const int)
0:39          Sequence
0:39            Constant:
0:39              0 (const int)
0:39            Constant:
0:39              1 (const int)
0:39        subgroupMul ( global highp 2-component vector of int)
0:39          vector swizzle ( temp highp 2-component vector of int)
0:39            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:39              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39                Constant:
0:39                  1 (const int)
0:39              Constant:
0:39                1 (const int)
0:39            Sequence
0:39              Constant:
0:39                0 (const int)
0:39              Constant:
0:39                1 (const int)
0:40      move second child to first child ( temp highp 3-component vector of int)
0:40        vector swizzle ( temp highp 3-component vector of int)
0:40          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:40            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40              Constant:
0:40                0 (const int)
0:40            Constant:
0:40              1 (const int)
0:40          Sequence
0:40            Constant:
0:40              0 (const int)
0:40            Constant:
0:40              1 (const int)
0:40            Constant:
0:40              2 (const int)
0:40        subgroupMul ( global highp 3-component vector of int)
0:40          vector swizzle ( temp highp 3-component vector of int)
0:40            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:40              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40                Constant:
0:40                  2 (const int)
0:40              Constant:
0:40                1 (const int)
0:40            Sequence
0:40              Constant:
0:40                0 (const int)
0:40              Constant:
0:40                1 (const int)
0:40              Constant:
0:40                2 (const int)
0:41      move second child to first child ( temp highp 4-component vector of int)
0:41        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:41          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41            Constant:
0:41              0 (const int)
0:41          Constant:
0:41            1 (const int)
0:41        subgroupMul ( global highp 4-component vector of int)
0:41          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:41            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41              Constant:
0:41                3 (const int)
0:41            Constant:
0:41              1 (const int)
0:43      move second child to first child ( temp highp uint)
0:43        direct index ( temp highp uint)
0:43          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:43            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43              Constant:
0:43                1 (const int)
0:43            Constant:
0:43              2 (const int)
0:43          Constant:
0:43            0 (const int)
0:43        subgroupMul ( global highp uint)
0:43          direct index ( temp highp uint)
0:43            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:43              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43                Constant:
0:43                  0 (const int)
0:43              Constant:
0:43                2 (const int)
0:43            Constant:
0:43              0 (const int)
0:44      move second child to first child ( temp highp 2-component vector of uint)
0:44        vector swizzle ( temp highp 2-component vector of uint)
0:44          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:44            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44              Constant:
0:44                1 (const int)
0:44            Constant:
0:44              2 (const int)
0:44          Sequence
0:44            Constant:
0:44              0 (const int)
0:44            Constant:
0:44              1 (const int)
0:44        subgroupMul ( global highp 2-component vector of uint)
0:44          vector swizzle ( temp highp 2-component vector of uint)
0:44            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:44              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44                Constant:
0:44                  1 (const int)
0:44              Constant:
0:44                2 (const int)
0:44            Sequence
0:44              Constant:
0:44                0 (const int)
0:44              Constant:
0:44                1 (const int)
0:45      move second child to first child ( temp highp 3-component vector of uint)
0:45        vector swizzle ( temp highp 3-component vector of uint)
0:45          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:45            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45              Constant:
0:45                1 (const int)
0:45            Constant:
0:45              2 (const int)
0:45          Sequence
0:45            Constant:
0:45              0 (const int)
0:45            Constant:
0:45              1 (const int)
0:45            Constant:
0:45              2 (const int)
0:45        subgroupMul ( global highp 3-component vector of uint)
0:45          vector swizzle ( temp highp 3-component vector of uint)
0:45            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:45              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45                Constant:
0:45                  2 (const int)
0:45              Constant:
0:45                2 (const int)
0:45            Sequence
0:45              Constant:
0:45                0 (const int)
0:45              Constant:
0:45                1 (const int)
0:45              Constant:
0:45                2 (const int)
0:46      move second child to first child ( temp highp 4-component vector of uint)
0:46        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:46          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46            Constant:
0:46              1 (const int)
0:46          Constant:
0:46            2 (const int)
0:46        subgroupMul ( global highp 4-component vector of uint)
0:46          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:46            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46              Constant:
0:46                3 (const int)
0:46            Constant:
0:46              2 (const int)
0:48      move second child to first child ( temp highp float)
0:48        direct index ( temp highp float)
0:48          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:48            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48              Constant:
0:48                2 (const int)
0:48            Constant:
0:48              0 (const int)
0:48          Constant:
0:48            0 (const int)
0:48        subgroupMin ( global highp float)
0:48          direct index ( temp highp float)
0:48            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:48              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48                Constant:
0:48                  0 (const int)
0:48              Constant:
0:48                0 (const int)
0:48            Constant:
0:48              0 (const int)
0:49      move second child to first child ( temp highp 2-component vector of float)
0:49        vector swizzle ( temp highp 2-component vector of float)
0:49          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:49            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49              Constant:
0:49                2 (const int)
0:49            Constant:
0:49              0 (const int)
0:49          Sequence
0:49            Constant:
0:49              0 (const int)
0:49            Constant:
0:49              1 (const int)
0:49        subgroupMin ( global highp 2-component vector of float)
0:49          vector swizzle ( temp highp 2-component vector of float)
0:49            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:49              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49                Constant:
0:49                  1 (const int)
0:49              Constant:
0:49                0 (const int)
0:49            Sequence
0:49              Constant:
0:49                0 (const int)
0:49              Constant:
0:49                1 (const int)
0:50      move second child to first child ( temp highp 3-component vector of float)
0:50        vector swizzle ( temp highp 3-component vector of float)
0:50          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:50            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50              Constant:
0:50                2 (const int)
0:50            Constant:
0:50              0 (const int)
0:50          Sequence
0:50            Constant:
0:50              0 (const int)
0:50            Constant:
0:50              1 (const int)
0:50            Constant:
0:50              2 (const int)
0:50        subgroupMin ( global highp 3-component vector of float)
0:50          vector swizzle ( temp highp 3-component vector of float)
0:50            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:50              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50                Constant:
0:50                  2 (const int)
0:50              Constant:
0:50                0 (const int)
0:50            Sequence
0:50              Constant:
0:50                0 (const int)
0:50              Constant:
0:50                1 (const int)
0:50              Constant:
0:50                2 (const int)
0:51      move second child to first child ( temp highp 4-component vector of float)
0:51        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:51          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51            Constant:
0:51              2 (const int)
0:51          Constant:
0:51            0 (const int)
0:51        subgroupMin ( global highp 4-component vector of float)
0:51          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:51            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51              Constant:
0:51                3 (const int)
0:51            Constant:
0:51              0 (const int)
0:53      move second child to first child ( temp highp int)
0:53        direct index ( temp highp int)
0:53          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:53            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53              Constant:
0:53                3 (const int)
0:53            Constant:
0:53              1 (const int)
0:53          Constant:
0:53            0 (const int)
0:53        subgroupMin ( global highp int)
0:53          direct index ( temp highp int)
0:53            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:53              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53                Constant:
0:53                  0 (const int)
0:53              Constant:
0:53                1 (const int)
0:53            Constant:
0:53              0 (const int)
0:54      move second child to first child ( temp highp 2-component vector of int)
0:54        vector swizzle ( temp highp 2-component vector of int)
0:54          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:54            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54              Constant:
0:54                3 (const int)
0:54            Constant:
0:54              1 (const int)
0:54          Sequence
0:54            Constant:
0:54              0 (const int)
0:54            Constant:
0:54              1 (const int)
0:54        subgroupMin ( global highp 2-component vector of int)
0:54          vector swizzle ( temp highp 2-component vector of int)
0:54            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:54              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54                Constant:
0:54                  1 (const int)
0:54              Constant:
0:54                1 (const int)
0:54            Sequence
0:54              Constant:
0:54                0 (const int)
0:54              Constant:
0:54                1 (const int)
0:55      move second child to first child ( temp highp 3-component vector of int)
0:55        vector swizzle ( temp highp 3-component vector of int)
0:55          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:55            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55              Constant:
0:55                3 (const int)
0:55            Constant:
0:55              1 (const int)
0:55          Sequence
0:55            Constant:
0:55              0 (const int)
0:55            Constant:
0:55              1 (const int)
0:55            Constant:
0:55              2 (const int)
0:55        subgroupMin ( global highp 3-component vector of int)
0:55          vector swizzle ( temp highp 3-component vector of int)
0:55            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:55              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55                Constant:
0:55                  2 (const int)
0:55              Constant:
0:55                1 (const int)
0:55            Sequence
0:55              Constant:
0:55                0 (const int)
0:55              Constant:
0:55                1 (const int)
0:55              Constant:
0:55                2 (const int)
0:56      move second child to first child ( temp highp 4-component vector of int)
0:56        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:56          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56            Constant:
0:56              3 (const int)
0:56          Constant:
0:56            1 (const int)
0:56        subgroupMin ( global highp 4-component vector of int)
0:56          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:56            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56              Constant:
0:56                3 (const int)
0:56            Constant:
0:56              1 (const int)
0:58      move second child to first child ( temp highp uint)
0:58        direct index ( temp highp uint)
0:58          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:58            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58              Constant:
0:58                0 (const int)
0:58            Constant:
0:58              2 (const int)
0:58          Constant:
0:58            0 (const int)
0:58        subgroupMin ( global highp uint)
0:58          direct index ( temp highp uint)
0:58            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:58              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58                Constant:
0:58                  0 (const int)
0:58              Constant:
0:58                2 (const int)
0:58            Constant:
0:58              0 (const int)
0:59      move second child to first child ( temp highp 2-component vector of uint)
0:59        vector swizzle ( temp highp 2-component vector of uint)
0:59          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:59            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59              Constant:
0:59                0 (const int)
0:59            Constant:
0:59              2 (const int)
0:59          Sequence
0:59            Constant:
0:59              0 (const int)
0:59            Constant:
0:59              1 (const int)
0:59        subgroupMin ( global highp 2-component vector of uint)
0:59          vector swizzle ( temp highp 2-component vector of uint)
0:59            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:59              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59                Constant:
0:59                  1 (const int)
0:59              Constant:
0:59                2 (const int)
0:59            Sequence
0:59              Constant:
0:59                0 (const int)
0:59              Constant:
0:59                1 (const int)
0:60      move second child to first child ( temp highp 3-component vector of uint)
0:60        vector swizzle ( temp highp 3-component vector of uint)
0:60          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:60            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60              Constant:
0:60                0 (const int)
0:60            Constant:
0:60              2 (const int)
0:60          Sequence
0:60            Constant:
0:60              0 (const int)
0:60            Constant:
0:60              1 (const int)
0:60            Constant:
0:60              2 (const int)
0:60        subgroupMin ( global highp 3-component vector of uint)
0:60          vector swizzle ( temp highp 3-component vector of uint)
0:60            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:60              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60                Constant:
0:60                  2 (const int)
0:60              Constant:
0:60                2 (const int)
0:60            Sequence
0:60              Constant:
0:60                0 (const int)
0:60              Constant:
0:60                1 (const int)
0:60              Constant:
0:60                2 (const int)
0:61      move second child to first child ( temp highp 4-component vector of uint)
0:61        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:61          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61            Constant:
0:61              0 (const int)
0:61          Constant:
0:61            2 (const int)
0:61        subgroupMin ( global highp 4-component vector of uint)
0:61          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:61            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61              Constant:
0:61                3 (const int)
0:61            Constant:
0:61              2 (const int)
0:63      move second child to first child ( temp highp float)
0:63        direct index ( temp highp float)
0:63          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:63            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63              Constant:
0:63                1 (const int)
0:63            Constant:
0:63              0 (const int)
0:63          Constant:
0:63            0 (const int)
0:63        subgroupMax ( global highp float)
0:63          direct index ( temp highp float)
0:63            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:63              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63                Constant:
0:63                  0 (const int)
0:63              Constant:
0:63                0 (const int)
0:63            Constant:
0:63              0 (const int)
0:64      move second child to first child ( temp highp 2-component vector of float)
0:64        vector swizzle ( temp highp 2-component vector of float)
0:64          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:64            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64              Constant:
0:64                1 (const int)
0:64            Constant:
0:64              0 (const int)
0:64          Sequence
0:64            Constant:
0:64              0 (const int)
0:64            Constant:
0:64              1 (const int)
0:64        subgroupMax ( global highp 2-component vector of float)
0:64          vector swizzle ( temp highp 2-component vector of float)
0:64            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:64              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64                Constant:
0:64                  1 (const int)
0:64              Constant:
0:64                0 (const int)
0:64            Sequence
0:64              Constant:
0:64                0 (const int)
0:64              Constant:
0:64                1 (const int)
0:65      move second child to first child ( temp highp 3-component vector of float)
0:65        vector swizzle ( temp highp 3-component vector of float)
0:65          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:65            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65              Constant:
0:65                1 (const int)
0:65            Constant:
0:65              0 (const int)
0:65          Sequence
0:65            Constant:
0:65              0 (const int)
0:65            Constant:
0:65              1 (const int)
0:65            Constant:
0:65              2 (const int)
0:65        subgroupMax ( global highp 3-component vector of float)
0:65          vector swizzle ( temp highp 3-component vector of float)
0:65            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:65              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65                Constant:
0:65                  2 (const int)
0:65              Constant:
0:65                0 (const int)
0:65            Sequence
0:65              Constant:
0:65                0 (const int)
0:65              Constant:
0:65                1 (const int)
0:65              Constant:
0:65                2 (const int)
0:66      move second child to first child ( temp highp 4-component vector of float)
0:66        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:66          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66            Constant:
0:66              1 (const int)
0:66          Constant:
0:66            0 (const int)
0:66        subgroupMax ( global highp 4-component vector of float)
0:66          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:66            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66              Constant:
0:66                3 (const int)
0:66            Constant:
0:66              0 (const int)
0:68      move second child to first child ( temp highp int)
0:68        direct index ( temp highp int)
0:68          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:68            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68              Constant:
0:68                2 (const int)
0:68            Constant:
0:68              1 (const int)
0:68          Constant:
0:68            0 (const int)
0:68        subgroupMax ( global highp int)
0:68          direct index ( temp highp int)
0:68            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:68              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68                Constant:
0:68                  0 (const int)
0:68              Constant:
0:68                1 (const int)
0:68            Constant:
0:68              0 (const int)
0:69      move second child to first child ( temp highp 2-component vector of int)
0:69        vector swizzle ( temp highp 2-component vector of int)
0:69          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:69            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69              Constant:
0:69                2 (const int)
0:69            Constant:
0:69              1 (const int)
0:69          Sequence
0:69            Constant:
0:69              0 (const int)
0:69            Constant:
0:69              1 (const int)
0:69        subgroupMax ( global highp 2-component vector of int)
0:69          vector swizzle ( temp highp 2-component vector of int)
0:69            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:69              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69                Constant:
0:69                  1 (const int)
0:69              Constant:
0:69                1 (const int)
0:69            Sequence
0:69              Constant:
0:69                0 (const int)
0:69              Constant:
0:69                1 (const int)
0:70      move second child to first child ( temp highp 3-component vector of int)
0:70        vector swizzle ( temp highp 3-component vector of int)
0:70          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:70            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70              Constant:
0:70                2 (const int)
0:70            Constant:
0:70              1 (const int)
0:70          Sequence
0:70            Constant:
0:70              0 (const int)
0:70            Constant:
0:70              1 (const int)
0:70            Constant:
0:70              2 (const int)
0:70        subgroupMax ( global highp 3-component vector of int)
0:70          vector swizzle ( temp highp 3-component vector of int)
0:70            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:70              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70                Constant:
0:70                  2 (const int)
0:70              Constant:
0:70                1 (const int)
0:70            Sequence
0:70              Constant:
0:70                0 (const int)
0:70              Constant:
0:70                1 (const int)
0:70              Constant:
0:70                2 (const int)
0:71      move second child to first child ( temp highp 4-component vector of int)
0:71        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:71          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71            Constant:
0:71              2 (const int)
0:71          Constant:
0:71            1 (const int)
0:71        subgroupMax ( global highp 4-component vector of int)
0:71          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:71            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71              Constant:
0:71                3 (const int)
0:71            Constant:
0:71              1 (const int)
0:73      move second child to first child ( temp highp uint)
0:73        direct index ( temp highp uint)
0:73          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:73            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73              Constant:
0:73                3 (const int)
0:73            Constant:
0:73              2 (const int)
0:73          Constant:
0:73            0 (const int)
0:73        subgroupMax ( global highp uint)
0:73          direct index ( temp highp uint)
0:73            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:73              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73                Constant:
0:73                  0 (const int)
0:73              Constant:
0:73                2 (const int)
0:73            Constant:
0:73              0 (const int)
0:74      move second child to first child ( temp highp 2-component vector of uint)
0:74        vector swizzle ( temp highp 2-component vector of uint)
0:74          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:74            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74              Constant:
0:74                3 (const int)
0:74            Constant:
0:74              2 (const int)
0:74          Sequence
0:74            Constant:
0:74              0 (const int)
0:74            Constant:
0:74              1 (const int)
0:74        subgroupMax ( global highp 2-component vector of uint)
0:74          vector swizzle ( temp highp 2-component vector of uint)
0:74            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:74              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74                Constant:
0:74                  1 (const int)
0:74              Constant:
0:74                2 (const int)
0:74            Sequence
0:74              Constant:
0:74                0 (const int)
0:74              Constant:
0:74                1 (const int)
0:75      move second child to first child ( temp highp 3-component vector of uint)
0:75        vector swizzle ( temp highp 3-component vector of uint)
0:75          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:75            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75              Constant:
0:75                3 (const int)
0:75            Constant:
0:75              2 (const int)
0:75          Sequence
0:75            Constant:
0:75              0 (const int)
0:75            Constant:
0:75              1 (const int)
0:75            Constant:
0:75              2 (const int)
0:75        subgroupMax ( global highp 3-component vector of uint)
0:75          vector swizzle ( temp highp 3-component vector of uint)
0:75            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:75              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75                Constant:
0:75                  2 (const int)
0:75              Constant:
0:75                2 (const int)
0:75            Sequence
0:75              Constant:
0:75                0 (const int)
0:75              Constant:
0:75                1 (const int)
0:75              Constant:
0:75                2 (const int)
0:76      move second child to first child ( temp highp 4-component vector of uint)
0:76        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:76          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76            Constant:
0:76              3 (const int)
0:76          Constant:
0:76            2 (const int)
0:76        subgroupMax ( global highp 4-component vector of uint)
0:76          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:76            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76              Constant:
0:76                3 (const int)
0:76            Constant:
0:76              2 (const int)
0:78      move second child to first child ( temp highp int)
0:78        direct index ( temp highp int)
0:78          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:78            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78              Constant:
0:78                0 (const int)
0:78            Constant:
0:78              1 (const int)
0:78          Constant:
0:78            0 (const int)
0:78        subgroupAnd ( global highp int)
0:78          direct index ( temp highp int)
0:78            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:78              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78                Constant:
0:78                  0 (const int)
0:78              Constant:
0:78                1 (const int)
0:78            Constant:
0:78              0 (const int)
0:79      move second child to first child ( temp highp 2-component vector of int)
0:79        vector swizzle ( temp highp 2-component vector of int)
0:79          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:79            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79              Constant:
0:79                0 (const int)
0:79            Constant:
0:79              1 (const int)
0:79          Sequence
0:79            Constant:
0:79              0 (const int)
0:79            Constant:
0:79              1 (const int)
0:79        subgroupAnd ( global highp 2-component vector of int)
0:79          vector swizzle ( temp highp 2-component vector of int)
0:79            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:79              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79                Constant:
0:79                  1 (const int)
0:79              Constant:
0:79                1 (const int)
0:79            Sequence
0:79              Constant:
0:79                0 (const int)
0:79              Constant:
0:79                1 (const int)
0:80      move second child to first child ( temp highp 3-component vector of int)
0:80        vector swizzle ( temp highp 3-component vector of int)
0:80          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:80            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80              Constant:
0:80                0 (const int)
0:80            Constant:
0:80              1 (const int)
0:80          Sequence
0:80            Constant:
0:80              0 (const int)
0:80            Constant:
0:80              1 (const int)
0:80            Constant:
0:80              2 (const int)
0:80        subgroupAnd ( global highp 3-component vector of int)
0:80          vector swizzle ( temp highp 3-component vector of int)
0:80            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:80              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80                Constant:
0:80                  2 (const int)
0:80              Constant:
0:80                1 (const int)
0:80            Sequence
0:80              Constant:
0:80                0 (const int)
0:80              Constant:
0:80                1 (const int)
0:80              Constant:
0:80                2 (const int)
0:81      move second child to first child ( temp highp 4-component vector of int)
0:81        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:81          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81            Constant:
0:81              0 (const int)
0:81          Constant:
0:81            1 (const int)
0:81        subgroupAnd ( global highp 4-component vector of int)
0:81          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:81            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81              Constant:
0:81                3 (const int)
0:81            Constant:
0:81              1 (const int)
0:83      move second child to first child ( temp highp uint)
0:83        direct index ( temp highp uint)
0:83          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:83            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83              Constant:
0:83                1 (const int)
0:83            Constant:
0:83              2 (const int)
0:83          Constant:
0:83            0 (const int)
0:83        subgroupAnd ( global highp uint)
0:83          direct index ( temp highp uint)
0:83            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:83              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83                Constant:
0:83                  0 (const int)
0:83              Constant:
0:83                2 (const int)
0:83            Constant:
0:83              0 (const int)
0:84      move second child to first child ( temp highp 2-component vector of uint)
0:84        vector swizzle ( temp highp 2-component vector of uint)
0:84          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:84            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84              Constant:
0:84                1 (const int)
0:84            Constant:
0:84              2 (const int)
0:84          Sequence
0:84            Constant:
0:84              0 (const int)
0:84            Constant:
0:84              1 (const int)
0:84        subgroupAnd ( global highp 2-component vector of uint)
0:84          vector swizzle ( temp highp 2-component vector of uint)
0:84            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:84              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84                Constant:
0:84                  1 (const int)
0:84              Constant:
0:84                2 (const int)
0:84            Sequence
0:84              Constant:
0:84                0 (const int)
0:84              Constant:
0:84                1 (const int)
0:85      move second child to first child ( temp highp 3-component vector of uint)
0:85        vector swizzle ( temp highp 3-component vector of uint)
0:85          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:85            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85              Constant:
0:85                1 (const int)
0:85            Constant:
0:85              2 (const int)
0:85          Sequence
0:85            Constant:
0:85              0 (const int)
0:85            Constant:
0:85              1 (const int)
0:85            Constant:
0:85              2 (const int)
0:85        subgroupAnd ( global highp 3-component vector of uint)
0:85          vector swizzle ( temp highp 3-component vector of uint)
0:85            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:85              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85                Constant:
0:85                  2 (const int)
0:85              Constant:
0:85                2 (const int)
0:85            Sequence
0:85              Constant:
0:85                0 (const int)
0:85              Constant:
0:85                1 (const int)
0:85              Constant:
0:85                2 (const int)
0:86      move second child to first child ( temp highp 4-component vector of uint)
0:86        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:86          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86            Constant:
0:86              1 (const int)
0:86          Constant:
0:86            2 (const int)
0:86        subgroupAnd ( global highp 4-component vector of uint)
0:86          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:86            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86              Constant:
0:86                3 (const int)
0:86            Constant:
0:86              2 (const int)
0:88      move second child to first child ( temp highp int)
0:88        direct index ( temp highp int)
0:88          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:88            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88              Constant:
0:88                2 (const int)
0:88            Constant:
0:88              1 (const int)
0:88          Constant:
0:88            0 (const int)
0:88        Convert bool to int ( temp highp int)
0:88          subgroupAnd ( global bool)
0:88            Compare Less Than ( temp bool)
0:88              direct index ( temp highp int)
0:88                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:88                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88                    Constant:
0:88                      0 (const int)
0:88                  Constant:
0:88                    1 (const int)
0:88                Constant:
0:88                  0 (const int)
0:88              Constant:
0:88                0 (const int)
0:89      move second child to first child ( temp highp 2-component vector of int)
0:89        vector swizzle ( temp highp 2-component vector of int)
0:89          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:89            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89              Constant:
0:89                2 (const int)
0:89            Constant:
0:89              1 (const int)
0:89          Sequence
0:89            Constant:
0:89              0 (const int)
0:89            Constant:
0:89              1 (const int)
0:89        Convert bool to int ( temp highp 2-component vector of int)
0:89          subgroupAnd ( global 2-component vector of bool)
0:89            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:89              vector swizzle ( temp highp 2-component vector of int)
0:89                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:89                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89                    Constant:
0:89                      1 (const int)
0:89                  Constant:
0:89                    1 (const int)
0:89                Sequence
0:89                  Constant:
0:89                    0 (const int)
0:89                  Constant:
0:89                    1 (const int)
0:89              Constant:
0:89                0 (const int)
0:89                0 (const int)
0:90      move second child to first child ( temp highp 3-component vector of int)
0:90        vector swizzle ( temp highp 3-component vector of int)
0:90          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:90            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90              Constant:
0:90                2 (const int)
0:90            Constant:
0:90              1 (const int)
0:90          Sequence
0:90            Constant:
0:90              0 (const int)
0:90            Constant:
0:90              1 (const int)
0:90            Constant:
0:90              2 (const int)
0:90        Convert bool to int ( temp highp 3-component vector of int)
0:90          subgroupAnd ( global 3-component vector of bool)
0:90            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:90              vector swizzle ( temp highp 3-component vector of int)
0:90                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:90                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90                    Constant:
0:90                      1 (const int)
0:90                  Constant:
0:90                    1 (const int)
0:90                Sequence
0:90                  Constant:
0:90                    0 (const int)
0:90                  Constant:
0:90                    1 (const int)
0:90                  Constant:
0:90                    2 (const int)
0:90              Constant:
0:90                0 (const int)
0:90                0 (const int)
0:90                0 (const int)
0:91      move second child to first child ( temp highp 4-component vector of int)
0:91        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:91          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91            Constant:
0:91              2 (const int)
0:91          Constant:
0:91            1 (const int)
0:91        Convert bool to int ( temp highp 4-component vector of int)
0:91          subgroupAnd ( global 4-component vector of bool)
0:91            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:91              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:91                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91                  Constant:
0:91                    1 (const int)
0:91                Constant:
0:91                  1 (const int)
0:91              Constant:
0:91                0 (const int)
0:91                0 (const int)
0:91                0 (const int)
0:91                0 (const int)
0:93      move second child to first child ( temp highp int)
0:93        direct index ( temp highp int)
0:93          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:93            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93              Constant:
0:93                3 (const int)
0:93            Constant:
0:93              1 (const int)
0:93          Constant:
0:93            0 (const int)
0:93        subgroupOr ( global highp int)
0:93          direct index ( temp highp int)
0:93            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:93              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93                Constant:
0:93                  0 (const int)
0:93              Constant:
0:93                1 (const int)
0:93            Constant:
0:93              0 (const int)
0:94      move second child to first child ( temp highp 2-component vector of int)
0:94        vector swizzle ( temp highp 2-component vector of int)
0:94          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:94            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94              Constant:
0:94                3 (const int)
0:94            Constant:
0:94              1 (const int)
0:94          Sequence
0:94            Constant:
0:94              0 (const int)
0:94            Constant:
0:94              1 (const int)
0:94        subgroupOr ( global highp 2-component vector of int)
0:94          vector swizzle ( temp highp 2-component vector of int)
0:94            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:94              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94                Constant:
0:94                  1 (const int)
0:94              Constant:
0:94                1 (const int)
0:94            Sequence
0:94              Constant:
0:94                0 (const int)
0:94              Constant:
0:94                1 (const int)
0:95      move second child to first child ( temp highp 3-component vector of int)
0:95        vector swizzle ( temp highp 3-component vector of int)
0:95          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:95            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95              Constant:
0:95                3 (const int)
0:95            Constant:
0:95              1 (const int)
0:95          Sequence
0:95            Constant:
0:95              0 (const int)
0:95            Constant:
0:95              1 (const int)
0:95            Constant:
0:95              2 (const int)
0:95        subgroupOr ( global highp 3-component vector of int)
0:95          vector swizzle ( temp highp 3-component vector of int)
0:95            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:95              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95                Constant:
0:95                  2 (const int)
0:95              Constant:
0:95                1 (const int)
0:95            Sequence
0:95              Constant:
0:95                0 (const int)
0:95              Constant:
0:95                1 (const int)
0:95              Constant:
0:95                2 (const int)
0:96      move second child to first child ( temp highp 4-component vector of int)
0:96        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:96          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96            Constant:
0:96              3 (const int)
0:96          Constant:
0:96            1 (const int)
0:96        subgroupOr ( global highp 4-component vector of int)
0:96          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:96            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96              Constant:
0:96                3 (const int)
0:96            Constant:
0:96              1 (const int)
0:98      move second child to first child ( temp highp uint)
0:98        direct index ( temp highp uint)
0:98          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:98            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98              Constant:
0:98                0 (const int)
0:98            Constant:
0:98              2 (const int)
0:98          Constant:
0:98            0 (const int)
0:98        subgroupOr ( global highp uint)
0:98          direct index ( temp highp uint)
0:98            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:98              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98                Constant:
0:98                  0 (const int)
0:98              Constant:
0:98                2 (const int)
0:98            Constant:
0:98              0 (const int)
0:99      move second child to first child ( temp highp 2-component vector of uint)
0:99        vector swizzle ( temp highp 2-component vector of uint)
0:99          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:99            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99              Constant:
0:99                0 (const int)
0:99            Constant:
0:99              2 (const int)
0:99          Sequence
0:99            Constant:
0:99              0 (const int)
0:99            Constant:
0:99              1 (const int)
0:99        subgroupOr ( global highp 2-component vector of uint)
0:99          vector swizzle ( temp highp 2-component vector of uint)
0:99            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:99              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99                Constant:
0:99                  1 (const int)
0:99              Constant:
0:99                2 (const int)
0:99            Sequence
0:99              Constant:
0:99                0 (const int)
0:99              Constant:
0:99                1 (const int)
0:100      move second child to first child ( temp highp 3-component vector of uint)
0:100        vector swizzle ( temp highp 3-component vector of uint)
0:100          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:100            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100              Constant:
0:100                0 (const int)
0:100            Constant:
0:100              2 (const int)
0:100          Sequence
0:100            Constant:
0:100              0 (const int)
0:100            Constant:
0:100              1 (const int)
0:100            Constant:
0:100              2 (const int)
0:100        subgroupOr ( global highp 3-component vector of uint)
0:100          vector swizzle ( temp highp 3-component vector of uint)
0:100            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:100              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100                Constant:
0:100                  2 (const int)
0:100              Constant:
0:100                2 (const int)
0:100            Sequence
0:100              Constant:
0:100                0 (const int)
0:100              Constant:
0:100                1 (const int)
0:100              Constant:
0:100                2 (const int)
0:101      move second child to first child ( temp highp 4-component vector of uint)
0:101        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:101          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101            Constant:
0:101              0 (const int)
0:101          Constant:
0:101            2 (const int)
0:101        subgroupOr ( global highp 4-component vector of uint)
0:101          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:101            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101              Constant:
0:101                3 (const int)
0:101            Constant:
0:101              2 (const int)
0:103      move second child to first child ( temp highp int)
0:103        direct index ( temp highp int)
0:103          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:103            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103              Constant:
0:103                1 (const int)
0:103            Constant:
0:103              1 (const int)
0:103          Constant:
0:103            0 (const int)
0:103        Convert bool to int ( temp highp int)
0:103          subgroupOr ( global bool)
0:103            Compare Less Than ( temp bool)
0:103              direct index ( temp highp int)
0:103                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:103                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103                    Constant:
0:103                      0 (const int)
0:103                  Constant:
0:103                    1 (const int)
0:103                Constant:
0:103                  0 (const int)
0:103              Constant:
0:103                0 (const int)
0:104      move second child to first child ( temp highp 2-component vector of int)
0:104        vector swizzle ( temp highp 2-component vector of int)
0:104          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:104            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104              Constant:
0:104                1 (const int)
0:104            Constant:
0:104              1 (const int)
0:104          Sequence
0:104            Constant:
0:104              0 (const int)
0:104            Constant:
0:104              1 (const int)
0:104        Convert bool to int ( temp highp 2-component vector of int)
0:104          subgroupOr ( global 2-component vector of bool)
0:104            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:104              vector swizzle ( temp highp 2-component vector of int)
0:104                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:104                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104                    Constant:
0:104                      1 (const int)
0:104                  Constant:
0:104                    1 (const int)
0:104                Sequence
0:104                  Constant:
0:104                    0 (const int)
0:104                  Constant:
0:104                    1 (const int)
0:104              Constant:
0:104                0 (const int)
0:104                0 (const int)
0:105      move second child to first child ( temp highp 3-component vector of int)
0:105        vector swizzle ( temp highp 3-component vector of int)
0:105          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:105            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105              Constant:
0:105                1 (const int)
0:105            Constant:
0:105              1 (const int)
0:105          Sequence
0:105            Constant:
0:105              0 (const int)
0:105            Constant:
0:105              1 (const int)
0:105            Constant:
0:105              2 (const int)
0:105        Convert bool to int ( temp highp 3-component vector of int)
0:105          subgroupOr ( global 3-component vector of bool)
0:105            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:105              vector swizzle ( temp highp 3-component vector of int)
0:105                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:105                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105                    Constant:
0:105                      1 (const int)
0:105                  Constant:
0:105                    1 (const int)
0:105                Sequence
0:105                  Constant:
0:105                    0 (const int)
0:105                  Constant:
0:105                    1 (const int)
0:105                  Constant:
0:105                    2 (const int)
0:105              Constant:
0:105                0 (const int)
0:105                0 (const int)
0:105                0 (const int)
0:106      move second child to first child ( temp highp 4-component vector of int)
0:106        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:106          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106            Constant:
0:106              1 (const int)
0:106          Constant:
0:106            1 (const int)
0:106        Convert bool to int ( temp highp 4-component vector of int)
0:106          subgroupOr ( global 4-component vector of bool)
0:106            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:106              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:106                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106                  Constant:
0:106                    1 (const int)
0:106                Constant:
0:106                  1 (const int)
0:106              Constant:
0:106                0 (const int)
0:106                0 (const int)
0:106                0 (const int)
0:106                0 (const int)
0:108      move second child to first child ( temp highp int)
0:108        direct index ( temp highp int)
0:108          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:108            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108              Constant:
0:108                2 (const int)
0:108            Constant:
0:108              1 (const int)
0:108          Constant:
0:108            0 (const int)
0:108        subgroupXor ( global highp int)
0:108          direct index ( temp highp int)
0:108            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:108              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108                Constant:
0:108                  0 (const int)
0:108              Constant:
0:108                1 (const int)
0:108            Constant:
0:108              0 (const int)
0:109      move second child to first child ( temp highp 2-component vector of int)
0:109        vector swizzle ( temp highp 2-component vector of int)
0:109          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:109            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109              Constant:
0:109                2 (const int)
0:109            Constant:
0:109              1 (const int)
0:109          Sequence
0:109            Constant:
0:109              0 (const int)
0:109            Constant:
0:109              1 (const int)
0:109        subgroupXor ( global highp 2-component vector of int)
0:109          vector swizzle ( temp highp 2-component vector of int)
0:109            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:109              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109                Constant:
0:109                  1 (const int)
0:109              Constant:
0:109                1 (const int)
0:109            Sequence
0:109              Constant:
0:109                0 (const int)
0:109              Constant:
0:109                1 (const int)
0:110      move second child to first child ( temp highp 3-component vector of int)
0:110        vector swizzle ( temp highp 3-component vector of int)
0:110          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:110            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110              Constant:
0:110                2 (const int)
0:110            Constant:
0:110              1 (const int)
0:110          Sequence
0:110            Constant:
0:110              0 (const int)
0:110            Constant:
0:110              1 (const int)
0:110            Constant:
0:110              2 (const int)
0:110        subgroupXor ( global highp 3-component vector of int)
0:110          vector swizzle ( temp highp 3-component vector of int)
0:110            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:110              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110                Constant:
0:110                  2 (const int)
0:110              Constant:
0:110                1 (const int)
0:110            Sequence
0:110              Constant:
0:110                0 (const int)
0:110              Constant:
0:110                1 (const int)
0:110              Constant:
0:110                2 (const int)
0:111      move second child to first child ( temp highp 4-component vector of int)
0:111        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:111          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111            Constant:
0:111              2 (const int)
0:111          Constant:
0:111            1 (const int)
0:111        subgroupXor ( global highp 4-component vector of int)
0:111          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:111            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111              Constant:
0:111                3 (const int)
0:111            Constant:
0:111              1 (const int)
0:113      move second child to first child ( temp highp uint)
0:113        direct index ( temp highp uint)
0:113          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:113            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113              Constant:
0:113                3 (const int)
0:113            Constant:
0:113              2 (const int)
0:113          Constant:
0:113            0 (const int)
0:113        subgroupXor ( global highp uint)
0:113          direct index ( temp highp uint)
0:113            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:113              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113                Constant:
0:113                  0 (const int)
0:113              Constant:
0:113                2 (const int)
0:113            Constant:
0:113              0 (const int)
0:114      move second child to first child ( temp highp 2-component vector of uint)
0:114        vector swizzle ( temp highp 2-component vector of uint)
0:114          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:114            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114              Constant:
0:114                3 (const int)
0:114            Constant:
0:114              2 (const int)
0:114          Sequence
0:114            Constant:
0:114              0 (const int)
0:114            Constant:
0:114              1 (const int)
0:114        subgroupXor ( global highp 2-component vector of uint)
0:114          vector swizzle ( temp highp 2-component vector of uint)
0:114            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:114              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114                Constant:
0:114                  1 (const int)
0:114              Constant:
0:114                2 (const int)
0:114            Sequence
0:114              Constant:
0:114                0 (const int)
0:114              Constant:
0:114                1 (const int)
0:115      move second child to first child ( temp highp 3-component vector of uint)
0:115        vector swizzle ( temp highp 3-component vector of uint)
0:115          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:115            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115              Constant:
0:115                3 (const int)
0:115            Constant:
0:115              2 (const int)
0:115          Sequence
0:115            Constant:
0:115              0 (const int)
0:115            Constant:
0:115              1 (const int)
0:115            Constant:
0:115              2 (const int)
0:115        subgroupXor ( global highp 3-component vector of uint)
0:115          vector swizzle ( temp highp 3-component vector of uint)
0:115            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:115              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115                Constant:
0:115                  2 (const int)
0:115              Constant:
0:115                2 (const int)
0:115            Sequence
0:115              Constant:
0:115                0 (const int)
0:115              Constant:
0:115                1 (const int)
0:115              Constant:
0:115                2 (const int)
0:116      move second child to first child ( temp highp 4-component vector of uint)
0:116        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:116          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116            Constant:
0:116              3 (const int)
0:116          Constant:
0:116            2 (const int)
0:116        subgroupXor ( global highp 4-component vector of uint)
0:116          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:116            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116              Constant:
0:116                3 (const int)
0:116            Constant:
0:116              2 (const int)
0:118      move second child to first child ( temp highp int)
0:118        direct index ( temp highp int)
0:118          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:118            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118              Constant:
0:118                0 (const int)
0:118            Constant:
0:118              1 (const int)
0:118          Constant:
0:118            0 (const int)
0:118        Convert bool to int ( temp highp int)
0:118          subgroupXor ( global bool)
0:118            Compare Less Than ( temp bool)
0:118              direct index ( temp highp int)
0:118                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:118                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118                    Constant:
0:118                      0 (const int)
0:118                  Constant:
0:118                    1 (const int)
0:118                Constant:
0:118                  0 (const int)
0:118              Constant:
0:118                0 (const int)
0:119      move second child to first child ( temp highp 2-component vector of int)
0:119        vector swizzle ( temp highp 2-component vector of int)
0:119          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:119            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119              Constant:
0:119                0 (const int)
0:119            Constant:
0:119              1 (const int)
0:119          Sequence
0:119            Constant:
0:119              0 (const int)
0:119            Constant:
0:119              1 (const int)
0:119        Convert bool to int ( temp highp 2-component vector of int)
0:119          subgroupXor ( global 2-component vector of bool)
0:119            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:119              vector swizzle ( temp highp 2-component vector of int)
0:119                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:119                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119                    Constant:
0:119                      1 (const int)
0:119                  Constant:
0:119                    1 (const int)
0:119                Sequence
0:119                  Constant:
0:119                    0 (const int)
0:119                  Constant:
0:119                    1 (const int)
0:119              Constant:
0:119                0 (const int)
0:119                0 (const int)
0:120      move second child to first child ( temp highp 3-component vector of int)
0:120        vector swizzle ( temp highp 3-component vector of int)
0:120          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:120            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120              Constant:
0:120                0 (const int)
0:120            Constant:
0:120              1 (const int)
0:120          Sequence
0:120            Constant:
0:120              0 (const int)
0:120            Constant:
0:120              1 (const int)
0:120            Constant:
0:120              2 (const int)
0:120        Convert bool to int ( temp highp 3-component vector of int)
0:120          subgroupXor ( global 3-component vector of bool)
0:120            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:120              vector swizzle ( temp highp 3-component vector of int)
0:120                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:120                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120                    Constant:
0:120                      1 (const int)
0:120                  Constant:
0:120                    1 (const int)
0:120                Sequence
0:120                  Constant:
0:120                    0 (const int)
0:120                  Constant:
0:120                    1 (const int)
0:120                  Constant:
0:120                    2 (const int)
0:120              Constant:
0:120                0 (const int)
0:120                0 (const int)
0:120                0 (const int)
0:121      move second child to first child ( temp highp 4-component vector of int)
0:121        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:121          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121            Constant:
0:121              0 (const int)
0:121          Constant:
0:121            1 (const int)
0:121        Convert bool to int ( temp highp 4-component vector of int)
0:121          subgroupXor ( global 4-component vector of bool)
0:121            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:121              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:121                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121                  Constant:
0:121                    1 (const int)
0:121                Constant:
0:121                  1 (const int)
0:121              Constant:
0:121                0 (const int)
0:121                0 (const int)
0:121                0 (const int)
0:121                0 (const int)
0:123      move second child to first child ( temp highp float)
0:123        direct index ( temp highp float)
0:123          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:123            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123              Constant:
0:123                1 (const int)
0:123            Constant:
0:123              0 (const int)
0:123          Constant:
0:123            0 (const int)
0:123        subgroupInclusiveAdd ( global highp float)
0:123          direct index ( temp highp float)
0:123            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:123              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123                Constant:
0:123                  0 (const int)
0:123              Constant:
0:123                0 (const int)
0:123            Constant:
0:123              0 (const int)
0:124      move second child to first child ( temp highp 2-component vector of float)
0:124        vector swizzle ( temp highp 2-component vector of float)
0:124          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:124            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124              Constant:
0:124                1 (const int)
0:124            Constant:
0:124              0 (const int)
0:124          Sequence
0:124            Constant:
0:124              0 (const int)
0:124            Constant:
0:124              1 (const int)
0:124        subgroupInclusiveAdd ( global highp 2-component vector of float)
0:124          vector swizzle ( temp highp 2-component vector of float)
0:124            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:124              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124                Constant:
0:124                  1 (const int)
0:124              Constant:
0:124                0 (const int)
0:124            Sequence
0:124              Constant:
0:124                0 (const int)
0:124              Constant:
0:124                1 (const int)
0:125      move second child to first child ( temp highp 3-component vector of float)
0:125        vector swizzle ( temp highp 3-component vector of float)
0:125          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:125            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125              Constant:
0:125                1 (const int)
0:125            Constant:
0:125              0 (const int)
0:125          Sequence
0:125            Constant:
0:125              0 (const int)
0:125            Constant:
0:125              1 (const int)
0:125            Constant:
0:125              2 (const int)
0:125        subgroupInclusiveAdd ( global highp 3-component vector of float)
0:125          vector swizzle ( temp highp 3-component vector of float)
0:125            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:125              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125                Constant:
0:125                  2 (const int)
0:125              Constant:
0:125                0 (const int)
0:125            Sequence
0:125              Constant:
0:125                0 (const int)
0:125              Constant:
0:125                1 (const int)
0:125              Constant:
0:125                2 (const int)
0:126      move second child to first child ( temp highp 4-component vector of float)
0:126        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:126          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126            Constant:
0:126              1 (const int)
0:126          Constant:
0:126            0 (const int)
0:126        subgroupInclusiveAdd ( global highp 4-component vector of float)
0:126          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:126            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126              Constant:
0:126                3 (const int)
0:126            Constant:
0:126              0 (const int)
0:128      move second child to first child ( temp highp int)
0:128        direct index ( temp highp int)
0:128          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:128            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128              Constant:
0:128                2 (const int)
0:128            Constant:
0:128              1 (const int)
0:128          Constant:
0:128            0 (const int)
0:128        subgroupInclusiveAdd ( global highp int)
0:128          direct index ( temp highp int)
0:128            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:128              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128                Constant:
0:128                  0 (const int)
0:128              Constant:
0:128                1 (const int)
0:128            Constant:
0:128              0 (const int)
0:129      move second child to first child ( temp highp 2-component vector of int)
0:129        vector swizzle ( temp highp 2-component vector of int)
0:129          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:129            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129              Constant:
0:129                2 (const int)
0:129            Constant:
0:129              1 (const int)
0:129          Sequence
0:129            Constant:
0:129              0 (const int)
0:129            Constant:
0:129              1 (const int)
0:129        subgroupInclusiveAdd ( global highp 2-component vector of int)
0:129          vector swizzle ( temp highp 2-component vector of int)
0:129            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:129              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129                Constant:
0:129                  1 (const int)
0:129              Constant:
0:129                1 (const int)
0:129            Sequence
0:129              Constant:
0:129                0 (const int)
0:129              Constant:
0:129                1 (const int)
0:130      move second child to first child ( temp highp 3-component vector of int)
0:130        vector swizzle ( temp highp 3-component vector of int)
0:130          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:130            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130              Constant:
0:130                2 (const int)
0:130            Constant:
0:130              1 (const int)
0:130          Sequence
0:130            Constant:
0:130              0 (const int)
0:130            Constant:
0:130              1 (const int)
0:130            Constant:
0:130              2 (const int)
0:130        subgroupInclusiveAdd ( global highp 3-component vector of int)
0:130          vector swizzle ( temp highp 3-component vector of int)
0:130            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:130              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130                Constant:
0:130                  2 (const int)
0:130              Constant:
0:130                1 (const int)
0:130            Sequence
0:130              Constant:
0:130                0 (const int)
0:130              Constant:
0:130                1 (const int)
0:130              Constant:
0:130                2 (const int)
0:131      move second child to first child ( temp highp 4-component vector of int)
0:131        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:131          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131            Constant:
0:131              2 (const int)
0:131          Constant:
0:131            1 (const int)
0:131        subgroupInclusiveAdd ( global highp 4-component vector of int)
0:131          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:131            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131              Constant:
0:131                3 (const int)
0:131            Constant:
0:131              1 (const int)
0:133      move second child to first child ( temp highp uint)
0:133        direct index ( temp highp uint)
0:133          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:133            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133              Constant:
0:133                3 (const int)
0:133            Constant:
0:133              2 (const int)
0:133          Constant:
0:133            0 (const int)
0:133        subgroupInclusiveAdd ( global highp uint)
0:133          direct index ( temp highp uint)
0:133            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:133              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133                Constant:
0:133                  0 (const int)
0:133              Constant:
0:133                2 (const int)
0:133            Constant:
0:133              0 (const int)
0:134      move second child to first child ( temp highp 2-component vector of uint)
0:134        vector swizzle ( temp highp 2-component vector of uint)
0:134          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:134            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134              Constant:
0:134                3 (const int)
0:134            Constant:
0:134              2 (const int)
0:134          Sequence
0:134            Constant:
0:134              0 (const int)
0:134            Constant:
0:134              1 (const int)
0:134        subgroupInclusiveAdd ( global highp 2-component vector of uint)
0:134          vector swizzle ( temp highp 2-component vector of uint)
0:134            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:134              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134                Constant:
0:134                  1 (const int)
0:134              Constant:
0:134                2 (const int)
0:134            Sequence
0:134              Constant:
0:134                0 (const int)
0:134              Constant:
0:134                1 (const int)
0:135      move second child to first child ( temp highp 3-component vector of uint)
0:135        vector swizzle ( temp highp 3-component vector of uint)
0:135          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:135            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135              Constant:
0:135                3 (const int)
0:135            Constant:
0:135              2 (const int)
0:135          Sequence
0:135            Constant:
0:135              0 (const int)
0:135            Constant:
0:135              1 (const int)
0:135            Constant:
0:135              2 (const int)
0:135        subgroupInclusiveAdd ( global highp 3-component vector of uint)
0:135          vector swizzle ( temp highp 3-component vector of uint)
0:135            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:135              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135                Constant:
0:135                  2 (const int)
0:135              Constant:
0:135                2 (const int)
0:135            Sequence
0:135              Constant:
0:135                0 (const int)
0:135              Constant:
0:135                1 (const int)
0:135              Constant:
0:135                2 (const int)
0:136      move second child to first child ( temp highp 4-component vector of uint)
0:136        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:136          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136            Constant:
0:136              3 (const int)
0:136          Constant:
0:136            2 (const int)
0:136        subgroupInclusiveAdd ( global highp 4-component vector of uint)
0:136          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:136            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136              Constant:
0:136                3 (const int)
0:136            Constant:
0:136              2 (const int)
0:138      move second child to first child ( temp highp float)
0:138        direct index ( temp highp float)
0:138          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:138            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138              Constant:
0:138                0 (const int)
0:138            Constant:
0:138              0 (const int)
0:138          Constant:
0:138            0 (const int)
0:138        subgroupInclusiveMul ( global highp float)
0:138          direct index ( temp highp float)
0:138            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:138              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138                Constant:
0:138                  0 (const int)
0:138              Constant:
0:138                0 (const int)
0:138            Constant:
0:138              0 (const int)
0:139      move second child to first child ( temp highp 2-component vector of float)
0:139        vector swizzle ( temp highp 2-component vector of float)
0:139          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:139            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139              Constant:
0:139                0 (const int)
0:139            Constant:
0:139              0 (const int)
0:139          Sequence
0:139            Constant:
0:139              0 (const int)
0:139            Constant:
0:139              1 (const int)
0:139        subgroupInclusiveMul ( global highp 2-component vector of float)
0:139          vector swizzle ( temp highp 2-component vector of float)
0:139            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:139              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139                Constant:
0:139                  1 (const int)
0:139              Constant:
0:139                0 (const int)
0:139            Sequence
0:139              Constant:
0:139                0 (const int)
0:139              Constant:
0:139                1 (const int)
0:140      move second child to first child ( temp highp 3-component vector of float)
0:140        vector swizzle ( temp highp 3-component vector of float)
0:140          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:140            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140              Constant:
0:140                0 (const int)
0:140            Constant:
0:140              0 (const int)
0:140          Sequence
0:140            Constant:
0:140              0 (const int)
0:140            Constant:
0:140              1 (const int)
0:140            Constant:
0:140              2 (const int)
0:140        subgroupInclusiveMul ( global highp 3-component vector of float)
0:140          vector swizzle ( temp highp 3-component vector of float)
0:140            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:140              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140                Constant:
0:140                  2 (const int)
0:140              Constant:
0:140                0 (const int)
0:140            Sequence
0:140              Constant:
0:140                0 (const int)
0:140              Constant:
0:140                1 (const int)
0:140              Constant:
0:140                2 (const int)
0:141      move second child to first child ( temp highp 4-component vector of float)
0:141        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:141          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141            Constant:
0:141              0 (const int)
0:141          Constant:
0:141            0 (const int)
0:141        subgroupInclusiveMul ( global highp 4-component vector of float)
0:141          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:141            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141              Constant:
0:141                3 (const int)
0:141            Constant:
0:141              0 (const int)
0:143      move second child to first child ( temp highp int)
0:143        direct index ( temp highp int)
0:143          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:143            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143              Constant:
0:143                1 (const int)
0:143            Constant:
0:143              1 (const int)
0:143          Constant:
0:143            0 (const int)
0:143        subgroupInclusiveMul ( global highp int)
0:143          direct index ( temp highp int)
0:143            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:143              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143                Constant:
0:143                  0 (const int)
0:143              Constant:
0:143                1 (const int)
0:143            Constant:
0:143              0 (const int)
0:144      move second child to first child ( temp highp 2-component vector of int)
0:144        vector swizzle ( temp highp 2-component vector of int)
0:144          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:144            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144              Constant:
0:144                1 (const int)
0:144            Constant:
0:144              1 (const int)
0:144          Sequence
0:144            Constant:
0:144              0 (const int)
0:144            Constant:
0:144              1 (const int)
0:144        subgroupInclusiveMul ( global highp 2-component vector of int)
0:144          vector swizzle ( temp highp 2-component vector of int)
0:144            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:144              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144                Constant:
0:144                  1 (const int)
0:144              Constant:
0:144                1 (const int)
0:144            Sequence
0:144              Constant:
0:144                0 (const int)
0:144              Constant:
0:144                1 (const int)
0:145      move second child to first child ( temp highp 3-component vector of int)
0:145        vector swizzle ( temp highp 3-component vector of int)
0:145          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:145            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145              Constant:
0:145                1 (const int)
0:145            Constant:
0:145              1 (const int)
0:145          Sequence
0:145            Constant:
0:145              0 (const int)
0:145            Constant:
0:145              1 (const int)
0:145            Constant:
0:145              2 (const int)
0:145        subgroupInclusiveMul ( global highp 3-component vector of int)
0:145          vector swizzle ( temp highp 3-component vector of int)
0:145            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:145              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145                Constant:
0:145                  2 (const int)
0:145              Constant:
0:145                1 (const int)
0:145            Sequence
0:145              Constant:
0:145                0 (const int)
0:145              Constant:
0:145                1 (const int)
0:145              Constant:
0:145                2 (const int)
0:146      move second child to first child ( temp highp 4-component vector of int)
0:146        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:146          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146            Constant:
0:146              1 (const int)
0:146          Constant:
0:146            1 (const int)
0:146        subgroupInclusiveMul ( global highp 4-component vector of int)
0:146          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:146            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146              Constant:
0:146                3 (const int)
0:146            Constant:
0:146              1 (const int)
0:148      move second child to first child ( temp highp uint)
0:148        direct index ( temp highp uint)
0:148          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:148            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148              Constant:
0:148                2 (const int)
0:148            Constant:
0:148              2 (const int)
0:148          Constant:
0:148            0 (const int)
0:148        subgroupInclusiveMul ( global highp uint)
0:148          direct index ( temp highp uint)
0:148            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:148              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148                Constant:
0:148                  0 (const int)
0:148              Constant:
0:148                2 (const int)
0:148            Constant:
0:148              0 (const int)
0:149      move second child to first child ( temp highp 2-component vector of uint)
0:149        vector swizzle ( temp highp 2-component vector of uint)
0:149          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:149            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149              Constant:
0:149                2 (const int)
0:149            Constant:
0:149              2 (const int)
0:149          Sequence
0:149            Constant:
0:149              0 (const int)
0:149            Constant:
0:149              1 (const int)
0:149        subgroupInclusiveMul ( global highp 2-component vector of uint)
0:149          vector swizzle ( temp highp 2-component vector of uint)
0:149            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:149              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149                Constant:
0:149                  1 (const int)
0:149              Constant:
0:149                2 (const int)
0:149            Sequence
0:149              Constant:
0:149                0 (const int)
0:149              Constant:
0:149                1 (const int)
0:150      move second child to first child ( temp highp 3-component vector of uint)
0:150        vector swizzle ( temp highp 3-component vector of uint)
0:150          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:150            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150              Constant:
0:150                2 (const int)
0:150            Constant:
0:150              2 (const int)
0:150          Sequence
0:150            Constant:
0:150              0 (const int)
0:150            Constant:
0:150              1 (const int)
0:150            Constant:
0:150              2 (const int)
0:150        subgroupInclusiveMul ( global highp 3-component vector of uint)
0:150          vector swizzle ( temp highp 3-component vector of uint)
0:150            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:150              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150                Constant:
0:150                  2 (const int)
0:150              Constant:
0:150                2 (const int)
0:150            Sequence
0:150              Constant:
0:150                0 (const int)
0:150              Constant:
0:150                1 (const int)
0:150              Constant:
0:150                2 (const int)
0:151      move second child to first child ( temp highp 4-component vector of uint)
0:151        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:151          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151            Constant:
0:151              2 (const int)
0:151          Constant:
0:151            2 (const int)
0:151        subgroupInclusiveMul ( global highp 4-component vector of uint)
0:151          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:151            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151              Constant:
0:151                3 (const int)
0:151            Constant:
0:151              2 (const int)
0:153      move second child to first child ( temp highp float)
0:153        direct index ( temp highp float)
0:153          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:153            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153              Constant:
0:153                3 (const int)
0:153            Constant:
0:153              0 (const int)
0:153          Constant:
0:153            0 (const int)
0:153        subgroupInclusiveMin ( global highp float)
0:153          direct index ( temp highp float)
0:153            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:153              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153                Constant:
0:153                  0 (const int)
0:153              Constant:
0:153                0 (const int)
0:153            Constant:
0:153              0 (const int)
0:154      move second child to first child ( temp highp 2-component vector of float)
0:154        vector swizzle ( temp highp 2-component vector of float)
0:154          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:154            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154              Constant:
0:154                3 (const int)
0:154            Constant:
0:154              0 (const int)
0:154          Sequence
0:154            Constant:
0:154              0 (const int)
0:154            Constant:
0:154              1 (const int)
0:154        subgroupInclusiveMin ( global highp 2-component vector of float)
0:154          vector swizzle ( temp highp 2-component vector of float)
0:154            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:154              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154                Constant:
0:154                  1 (const int)
0:154              Constant:
0:154                0 (const int)
0:154            Sequence
0:154              Constant:
0:154                0 (const int)
0:154              Constant:
0:154                1 (const int)
0:155      move second child to first child ( temp highp 3-component vector of float)
0:155        vector swizzle ( temp highp 3-component vector of float)
0:155          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:155            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155              Constant:
0:155                3 (const int)
0:155            Constant:
0:155              0 (const int)
0:155          Sequence
0:155            Constant:
0:155              0 (const int)
0:155            Constant:
0:155              1 (const int)
0:155            Constant:
0:155              2 (const int)
0:155        subgroupInclusiveMin ( global highp 3-component vector of float)
0:155          vector swizzle ( temp highp 3-component vector of float)
0:155            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:155              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155                Constant:
0:155                  2 (const int)
0:155              Constant:
0:155                0 (const int)
0:155            Sequence
0:155              Constant:
0:155                0 (const int)
0:155              Constant:
0:155                1 (const int)
0:155              Constant:
0:155                2 (const int)
0:156      move second child to first child ( temp highp 4-component vector of float)
0:156        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:156          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156            Constant:
0:156              3 (const int)
0:156          Constant:
0:156            0 (const int)
0:156        subgroupInclusiveMin ( global highp 4-component vector of float)
0:156          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:156            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156              Constant:
0:156                3 (const int)
0:156            Constant:
0:156              0 (const int)
0:158      move second child to first child ( temp highp int)
0:158        direct index ( temp highp int)
0:158          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:158            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158              Constant:
0:158                0 (const int)
0:158            Constant:
0:158              1 (const int)
0:158          Constant:
0:158            0 (const int)
0:158        subgroupInclusiveMin ( global highp int)
0:158          direct index ( temp highp int)
0:158            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:158              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158                Constant:
0:158                  0 (const int)
0:158              Constant:
0:158                1 (const int)
0:158            Constant:
0:158              0 (const int)
0:159      move second child to first child ( temp highp 2-component vector of int)
0:159        vector swizzle ( temp highp 2-component vector of int)
0:159          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:159            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159              Constant:
0:159                0 (const int)
0:159            Constant:
0:159              1 (const int)
0:159          Sequence
0:159            Constant:
0:159              0 (const int)
0:159            Constant:
0:159              1 (const int)
0:159        subgroupInclusiveMin ( global highp 2-component vector of int)
0:159          vector swizzle ( temp highp 2-component vector of int)
0:159            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:159              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159                Constant:
0:159                  1 (const int)
0:159              Constant:
0:159                1 (const int)
0:159            Sequence
0:159              Constant:
0:159                0 (const int)
0:159              Constant:
0:159                1 (const int)
0:160      move second child to first child ( temp highp 3-component vector of int)
0:160        vector swizzle ( temp highp 3-component vector of int)
0:160          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:160            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160              Constant:
0:160                0 (const int)
0:160            Constant:
0:160              1 (const int)
0:160          Sequence
0:160            Constant:
0:160              0 (const int)
0:160            Constant:
0:160              1 (const int)
0:160            Constant:
0:160              2 (const int)
0:160        subgroupInclusiveMin ( global highp 3-component vector of int)
0:160          vector swizzle ( temp highp 3-component vector of int)
0:160            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:160              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160                Constant:
0:160                  2 (const int)
0:160              Constant:
0:160                1 (const int)
0:160            Sequence
0:160              Constant:
0:160                0 (const int)
0:160              Constant:
0:160                1 (const int)
0:160              Constant:
0:160                2 (const int)
0:161      move second child to first child ( temp highp 4-component vector of int)
0:161        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:161          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161            Constant:
0:161              0 (const int)
0:161          Constant:
0:161            1 (const int)
0:161        subgroupInclusiveMin ( global highp 4-component vector of int)
0:161          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:161            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161              Constant:
0:161                3 (const int)
0:161            Constant:
0:161              1 (const int)
0:163      move second child to first child ( temp highp uint)
0:163        direct index ( temp highp uint)
0:163          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:163            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163              Constant:
0:163                1 (const int)
0:163            Constant:
0:163              2 (const int)
0:163          Constant:
0:163            0 (const int)
0:163        subgroupInclusiveMin ( global highp uint)
0:163          direct index ( temp highp uint)
0:163            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:163              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163                Constant:
0:163                  0 (const int)
0:163              Constant:
0:163                2 (const int)
0:163            Constant:
0:163              0 (const int)
0:164      move second child to first child ( temp highp 2-component vector of uint)
0:164        vector swizzle ( temp highp 2-component vector of uint)
0:164          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:164            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164              Constant:
0:164                1 (const int)
0:164            Constant:
0:164              2 (const int)
0:164          Sequence
0:164            Constant:
0:164              0 (const int)
0:164            Constant:
0:164              1 (const int)
0:164        subgroupInclusiveMin ( global highp 2-component vector of uint)
0:164          vector swizzle ( temp highp 2-component vector of uint)
0:164            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:164              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164                Constant:
0:164                  1 (const int)
0:164              Constant:
0:164                2 (const int)
0:164            Sequence
0:164              Constant:
0:164                0 (const int)
0:164              Constant:
0:164                1 (const int)
0:165      move second child to first child ( temp highp 3-component vector of uint)
0:165        vector swizzle ( temp highp 3-component vector of uint)
0:165          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:165            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165              Constant:
0:165                1 (const int)
0:165            Constant:
0:165              2 (const int)
0:165          Sequence
0:165            Constant:
0:165              0 (const int)
0:165            Constant:
0:165              1 (const int)
0:165            Constant:
0:165              2 (const int)
0:165        subgroupInclusiveMin ( global highp 3-component vector of uint)
0:165          vector swizzle ( temp highp 3-component vector of uint)
0:165            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:165              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165                Constant:
0:165                  2 (const int)
0:165              Constant:
0:165                2 (const int)
0:165            Sequence
0:165              Constant:
0:165                0 (const int)
0:165              Constant:
0:165                1 (const int)
0:165              Constant:
0:165                2 (const int)
0:166      move second child to first child ( temp highp 4-component vector of uint)
0:166        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:166          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166            Constant:
0:166              1 (const int)
0:166          Constant:
0:166            2 (const int)
0:166        subgroupInclusiveMin ( global highp 4-component vector of uint)
0:166          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:166            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166              Constant:
0:166                3 (const int)
0:166            Constant:
0:166              2 (const int)
0:168      move second child to first child ( temp highp float)
0:168        direct index ( temp highp float)
0:168          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:168            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168              Constant:
0:168                2 (const int)
0:168            Constant:
0:168              0 (const int)
0:168          Constant:
0:168            0 (const int)
0:168        subgroupInclusiveMax ( global highp float)
0:168          direct index ( temp highp float)
0:168            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:168              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168                Constant:
0:168                  0 (const int)
0:168              Constant:
0:168                0 (const int)
0:168            Constant:
0:168              0 (const int)
0:169      move second child to first child ( temp highp 2-component vector of float)
0:169        vector swizzle ( temp highp 2-component vector of float)
0:169          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:169            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169              Constant:
0:169                2 (const int)
0:169            Constant:
0:169              0 (const int)
0:169          Sequence
0:169            Constant:
0:169              0 (const int)
0:169            Constant:
0:169              1 (const int)
0:169        subgroupInclusiveMax ( global highp 2-component vector of float)
0:169          vector swizzle ( temp highp 2-component vector of float)
0:169            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:169              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169                Constant:
0:169                  1 (const int)
0:169              Constant:
0:169                0 (const int)
0:169            Sequence
0:169              Constant:
0:169                0 (const int)
0:169              Constant:
0:169                1 (const int)
0:170      move second child to first child ( temp highp 3-component vector of float)
0:170        vector swizzle ( temp highp 3-component vector of float)
0:170          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:170            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170              Constant:
0:170                2 (const int)
0:170            Constant:
0:170              0 (const int)
0:170          Sequence
0:170            Constant:
0:170              0 (const int)
0:170            Constant:
0:170              1 (const int)
0:170            Constant:
0:170              2 (const int)
0:170        subgroupInclusiveMax ( global highp 3-component vector of float)
0:170          vector swizzle ( temp highp 3-component vector of float)
0:170            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:170              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170                Constant:
0:170                  2 (const int)
0:170              Constant:
0:170                0 (const int)
0:170            Sequence
0:170              Constant:
0:170                0 (const int)
0:170              Constant:
0:170                1 (const int)
0:170              Constant:
0:170                2 (const int)
0:171      move second child to first child ( temp highp 4-component vector of float)
0:171        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:171          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171            Constant:
0:171              2 (const int)
0:171          Constant:
0:171            0 (const int)
0:171        subgroupInclusiveMax ( global highp 4-component vector of float)
0:171          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:171            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171              Constant:
0:171                3 (const int)
0:171            Constant:
0:171              0 (const int)
0:173      move second child to first child ( temp highp int)
0:173        direct index ( temp highp int)
0:173          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:173            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173              Constant:
0:173                3 (const int)
0:173            Constant:
0:173              1 (const int)
0:173          Constant:
0:173            0 (const int)
0:173        subgroupInclusiveMax ( global highp int)
0:173          direct index ( temp highp int)
0:173            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:173              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173                Constant:
0:173                  0 (const int)
0:173              Constant:
0:173                1 (const int)
0:173            Constant:
0:173              0 (const int)
0:174      move second child to first child ( temp highp 2-component vector of int)
0:174        vector swizzle ( temp highp 2-component vector of int)
0:174          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:174            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174              Constant:
0:174                3 (const int)
0:174            Constant:
0:174              1 (const int)
0:174          Sequence
0:174            Constant:
0:174              0 (const int)
0:174            Constant:
0:174              1 (const int)
0:174        subgroupInclusiveMax ( global highp 2-component vector of int)
0:174          vector swizzle ( temp highp 2-component vector of int)
0:174            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:174              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174                Constant:
0:174                  1 (const int)
0:174              Constant:
0:174                1 (const int)
0:174            Sequence
0:174              Constant:
0:174                0 (const int)
0:174              Constant:
0:174                1 (const int)
0:175      move second child to first child ( temp highp 3-component vector of int)
0:175        vector swizzle ( temp highp 3-component vector of int)
0:175          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:175            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175              Constant:
0:175                3 (const int)
0:175            Constant:
0:175              1 (const int)
0:175          Sequence
0:175            Constant:
0:175              0 (const int)
0:175            Constant:
0:175              1 (const int)
0:175            Constant:
0:175              2 (const int)
0:175        subgroupInclusiveMax ( global highp 3-component vector of int)
0:175          vector swizzle ( temp highp 3-component vector of int)
0:175            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:175              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175                Constant:
0:175                  2 (const int)
0:175              Constant:
0:175                1 (const int)
0:175            Sequence
0:175              Constant:
0:175                0 (const int)
0:175              Constant:
0:175                1 (const int)
0:175              Constant:
0:175                2 (const int)
0:176      move second child to first child ( temp highp 4-component vector of int)
0:176        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:176          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176            Constant:
0:176              3 (const int)
0:176          Constant:
0:176            1 (const int)
0:176        subgroupInclusiveMax ( global highp 4-component vector of int)
0:176          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:176            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176              Constant:
0:176                3 (const int)
0:176            Constant:
0:176              1 (const int)
0:178      move second child to first child ( temp highp uint)
0:178        direct index ( temp highp uint)
0:178          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:178            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178              Constant:
0:178                0 (const int)
0:178            Constant:
0:178              2 (const int)
0:178          Constant:
0:178            0 (const int)
0:178        subgroupInclusiveMax ( global highp uint)
0:178          direct index ( temp highp uint)
0:178            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:178              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178                Constant:
0:178                  0 (const int)
0:178              Constant:
0:178                2 (const int)
0:178            Constant:
0:178              0 (const int)
0:179      move second child to first child ( temp highp 2-component vector of uint)
0:179        vector swizzle ( temp highp 2-component vector of uint)
0:179          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:179            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179              Constant:
0:179                0 (const int)
0:179            Constant:
0:179              2 (const int)
0:179          Sequence
0:179            Constant:
0:179              0 (const int)
0:179            Constant:
0:179              1 (const int)
0:179        subgroupInclusiveMax ( global highp 2-component vector of uint)
0:179          vector swizzle ( temp highp 2-component vector of uint)
0:179            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:179              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179                Constant:
0:179                  1 (const int)
0:179              Constant:
0:179                2 (const int)
0:179            Sequence
0:179              Constant:
0:179                0 (const int)
0:179              Constant:
0:179                1 (const int)
0:180      move second child to first child ( temp highp 3-component vector of uint)
0:180        vector swizzle ( temp highp 3-component vector of uint)
0:180          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:180            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180              Constant:
0:180                0 (const int)
0:180            Constant:
0:180              2 (const int)
0:180          Sequence
0:180            Constant:
0:180              0 (const int)
0:180            Constant:
0:180              1 (const int)
0:180            Constant:
0:180              2 (const int)
0:180        subgroupInclusiveMax ( global highp 3-component vector of uint)
0:180          vector swizzle ( temp highp 3-component vector of uint)
0:180            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:180              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180                Constant:
0:180                  2 (const int)
0:180              Constant:
0:180                2 (const int)
0:180            Sequence
0:180              Constant:
0:180                0 (const int)
0:180              Constant:
0:180                1 (const int)
0:180              Constant:
0:180                2 (const int)
0:181      move second child to first child ( temp highp 4-component vector of uint)
0:181        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:181          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181            Constant:
0:181              0 (const int)
0:181          Constant:
0:181            2 (const int)
0:181        subgroupInclusiveMax ( global highp 4-component vector of uint)
0:181          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:181            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181              Constant:
0:181                3 (const int)
0:181            Constant:
0:181              2 (const int)
0:183      move second child to first child ( temp highp int)
0:183        direct index ( temp highp int)
0:183          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:183            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183              Constant:
0:183                1 (const int)
0:183            Constant:
0:183              1 (const int)
0:183          Constant:
0:183            0 (const int)
0:183        subgroupInclusiveAnd ( global highp int)
0:183          direct index ( temp highp int)
0:183            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:183              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183                Constant:
0:183                  0 (const int)
0:183              Constant:
0:183                1 (const int)
0:183            Constant:
0:183              0 (const int)
0:184      move second child to first child ( temp highp 2-component vector of int)
0:184        vector swizzle ( temp highp 2-component vector of int)
0:184          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:184            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184              Constant:
0:184                1 (const int)
0:184            Constant:
0:184              1 (const int)
0:184          Sequence
0:184            Constant:
0:184              0 (const int)
0:184            Constant:
0:184              1 (const int)
0:184        subgroupInclusiveAnd ( global highp 2-component vector of int)
0:184          vector swizzle ( temp highp 2-component vector of int)
0:184            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:184              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184                Constant:
0:184                  1 (const int)
0:184              Constant:
0:184                1 (const int)
0:184            Sequence
0:184              Constant:
0:184                0 (const int)
0:184              Constant:
0:184                1 (const int)
0:185      move second child to first child ( temp highp 3-component vector of int)
0:185        vector swizzle ( temp highp 3-component vector of int)
0:185          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:185            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185              Constant:
0:185                1 (const int)
0:185            Constant:
0:185              1 (const int)
0:185          Sequence
0:185            Constant:
0:185              0 (const int)
0:185            Constant:
0:185              1 (const int)
0:185            Constant:
0:185              2 (const int)
0:185        subgroupInclusiveAnd ( global highp 3-component vector of int)
0:185          vector swizzle ( temp highp 3-component vector of int)
0:185            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:185              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185                Constant:
0:185                  2 (const int)
0:185              Constant:
0:185                1 (const int)
0:185            Sequence
0:185              Constant:
0:185                0 (const int)
0:185              Constant:
0:185                1 (const int)
0:185              Constant:
0:185                2 (const int)
0:186      move second child to first child ( temp highp 4-component vector of int)
0:186        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:186          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186            Constant:
0:186              1 (const int)
0:186          Constant:
0:186            1 (const int)
0:186        subgroupInclusiveAnd ( global highp 4-component vector of int)
0:186          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:186            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186              Constant:
0:186                3 (const int)
0:186            Constant:
0:186              1 (const int)
0:188      move second child to first child ( temp highp uint)
0:188        direct index ( temp highp uint)
0:188          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:188            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188              Constant:
0:188                2 (const int)
0:188            Constant:
0:188              2 (const int)
0:188          Constant:
0:188            0 (const int)
0:188        subgroupInclusiveAnd ( global highp uint)
0:188          direct index ( temp highp uint)
0:188            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:188              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188                Constant:
0:188                  0 (const int)
0:188              Constant:
0:188                2 (const int)
0:188            Constant:
0:188              0 (const int)
0:189      move second child to first child ( temp highp 2-component vector of uint)
0:189        vector swizzle ( temp highp 2-component vector of uint)
0:189          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:189            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189              Constant:
0:189                2 (const int)
0:189            Constant:
0:189              2 (const int)
0:189          Sequence
0:189            Constant:
0:189              0 (const int)
0:189            Constant:
0:189              1 (const int)
0:189        subgroupInclusiveAnd ( global highp 2-component vector of uint)
0:189          vector swizzle ( temp highp 2-component vector of uint)
0:189            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:189              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189                Constant:
0:189                  1 (const int)
0:189              Constant:
0:189                2 (const int)
0:189            Sequence
0:189              Constant:
0:189                0 (const int)
0:189              Constant:
0:189                1 (const int)
0:190      move second child to first child ( temp highp 3-component vector of uint)
0:190        vector swizzle ( temp highp 3-component vector of uint)
0:190          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:190            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190              Constant:
0:190                2 (const int)
0:190            Constant:
0:190              2 (const int)
0:190          Sequence
0:190            Constant:
0:190              0 (const int)
0:190            Constant:
0:190              1 (const int)
0:190            Constant:
0:190              2 (const int)
0:190        subgroupInclusiveAnd ( global highp 3-component vector of uint)
0:190          vector swizzle ( temp highp 3-component vector of uint)
0:190            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:190              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190                Constant:
0:190                  2 (const int)
0:190              Constant:
0:190                2 (const int)
0:190            Sequence
0:190              Constant:
0:190                0 (const int)
0:190              Constant:
0:190                1 (const int)
0:190              Constant:
0:190                2 (const int)
0:191      move second child to first child ( temp highp 4-component vector of uint)
0:191        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:191          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191            Constant:
0:191              2 (const int)
0:191          Constant:
0:191            2 (const int)
0:191        subgroupInclusiveAnd ( global highp 4-component vector of uint)
0:191          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:191            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191              Constant:
0:191                3 (const int)
0:191            Constant:
0:191              2 (const int)
0:193      move second child to first child ( temp highp int)
0:193        direct index ( temp highp int)
0:193          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:193            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193              Constant:
0:193                3 (const int)
0:193            Constant:
0:193              1 (const int)
0:193          Constant:
0:193            0 (const int)
0:193        Convert bool to int ( temp highp int)
0:193          subgroupInclusiveAnd ( global bool)
0:193            Compare Less Than ( temp bool)
0:193              direct index ( temp highp int)
0:193                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:193                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193                    Constant:
0:193                      0 (const int)
0:193                  Constant:
0:193                    1 (const int)
0:193                Constant:
0:193                  0 (const int)
0:193              Constant:
0:193                0 (const int)
0:194      move second child to first child ( temp highp 2-component vector of int)
0:194        vector swizzle ( temp highp 2-component vector of int)
0:194          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:194            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194              Constant:
0:194                3 (const int)
0:194            Constant:
0:194              1 (const int)
0:194          Sequence
0:194            Constant:
0:194              0 (const int)
0:194            Constant:
0:194              1 (const int)
0:194        Convert bool to int ( temp highp 2-component vector of int)
0:194          subgroupInclusiveAnd ( global 2-component vector of bool)
0:194            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:194              vector swizzle ( temp highp 2-component vector of int)
0:194                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:194                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194                    Constant:
0:194                      1 (const int)
0:194                  Constant:
0:194                    1 (const int)
0:194                Sequence
0:194                  Constant:
0:194                    0 (const int)
0:194                  Constant:
0:194                    1 (const int)
0:194              Constant:
0:194                0 (const int)
0:194                0 (const int)
0:195      move second child to first child ( temp highp 3-component vector of int)
0:195        vector swizzle ( temp highp 3-component vector of int)
0:195          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:195            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195              Constant:
0:195                3 (const int)
0:195            Constant:
0:195              1 (const int)
0:195          Sequence
0:195            Constant:
0:195              0 (const int)
0:195            Constant:
0:195              1 (const int)
0:195            Constant:
0:195              2 (const int)
0:195        Convert bool to int ( temp highp 3-component vector of int)
0:195          subgroupInclusiveAnd ( global 3-component vector of bool)
0:195            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:195              vector swizzle ( temp highp 3-component vector of int)
0:195                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:195                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195                    Constant:
0:195                      1 (const int)
0:195                  Constant:
0:195                    1 (const int)
0:195                Sequence
0:195                  Constant:
0:195                    0 (const int)
0:195                  Constant:
0:195                    1 (const int)
0:195                  Constant:
0:195                    2 (const int)
0:195              Constant:
0:195                0 (const int)
0:195                0 (const int)
0:195                0 (const int)
0:196      move second child to first child ( temp highp 4-component vector of int)
0:196        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:196          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196            Constant:
0:196              3 (const int)
0:196          Constant:
0:196            1 (const int)
0:196        Convert bool to int ( temp highp 4-component vector of int)
0:196          subgroupInclusiveAnd ( global 4-component vector of bool)
0:196            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:196              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:196                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196                  Constant:
0:196                    1 (const int)
0:196                Constant:
0:196                  1 (const int)
0:196              Constant:
0:196                0 (const int)
0:196                0 (const int)
0:196                0 (const int)
0:196                0 (const int)
0:198      move second child to first child ( temp highp int)
0:198        direct index ( temp highp int)
0:198          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:198            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198              Constant:
0:198                0 (const int)
0:198            Constant:
0:198              1 (const int)
0:198          Constant:
0:198            0 (const int)
0:198        subgroupInclusiveOr ( global highp int)
0:198          direct index ( temp highp int)
0:198            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:198              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198                Constant:
0:198                  0 (const int)
0:198              Constant:
0:198                1 (const int)
0:198            Constant:
0:198              0 (const int)
0:199      move second child to first child ( temp highp 2-component vector of int)
0:199        vector swizzle ( temp highp 2-component vector of int)
0:199          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:199            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199              Constant:
0:199                0 (const int)
0:199            Constant:
0:199              1 (const int)
0:199          Sequence
0:199            Constant:
0:199              0 (const int)
0:199            Constant:
0:199              1 (const int)
0:199        subgroupInclusiveOr ( global highp 2-component vector of int)
0:199          vector swizzle ( temp highp 2-component vector of int)
0:199            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:199              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199                Constant:
0:199                  1 (const int)
0:199              Constant:
0:199                1 (const int)
0:199            Sequence
0:199              Constant:
0:199                0 (const int)
0:199              Constant:
0:199                1 (const int)
0:200      move second child to first child ( temp highp 3-component vector of int)
0:200        vector swizzle ( temp highp 3-component vector of int)
0:200          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:200            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200              Constant:
0:200                0 (const int)
0:200            Constant:
0:200              1 (const int)
0:200          Sequence
0:200            Constant:
0:200              0 (const int)
0:200            Constant:
0:200              1 (const int)
0:200            Constant:
0:200              2 (const int)
0:200        subgroupInclusiveOr ( global highp 3-component vector of int)
0:200          vector swizzle ( temp highp 3-component vector of int)
0:200            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:200              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200                Constant:
0:200                  2 (const int)
0:200              Constant:
0:200                1 (const int)
0:200            Sequence
0:200              Constant:
0:200                0 (const int)
0:200              Constant:
0:200                1 (const int)
0:200              Constant:
0:200                2 (const int)
0:201      move second child to first child ( temp highp 4-component vector of int)
0:201        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:201          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201            Constant:
0:201              0 (const int)
0:201          Constant:
0:201            1 (const int)
0:201        subgroupInclusiveOr ( global highp 4-component vector of int)
0:201          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:201            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201              Constant:
0:201                3 (const int)
0:201            Constant:
0:201              1 (const int)
0:203      move second child to first child ( temp highp uint)
0:203        direct index ( temp highp uint)
0:203          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:203            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203              Constant:
0:203                1 (const int)
0:203            Constant:
0:203              2 (const int)
0:203          Constant:
0:203            0 (const int)
0:203        subgroupInclusiveOr ( global highp uint)
0:203          direct index ( temp highp uint)
0:203            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:203              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203                Constant:
0:203                  0 (const int)
0:203              Constant:
0:203                2 (const int)
0:203            Constant:
0:203              0 (const int)
0:204      move second child to first child ( temp highp 2-component vector of uint)
0:204        vector swizzle ( temp highp 2-component vector of uint)
0:204          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:204            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204              Constant:
0:204                1 (const int)
0:204            Constant:
0:204              2 (const int)
0:204          Sequence
0:204            Constant:
0:204              0 (const int)
0:204            Constant:
0:204              1 (const int)
0:204        subgroupInclusiveOr ( global highp 2-component vector of uint)
0:204          vector swizzle ( temp highp 2-component vector of uint)
0:204            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:204              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204                Constant:
0:204                  1 (const int)
0:204              Constant:
0:204                2 (const int)
0:204            Sequence
0:204              Constant:
0:204                0 (const int)
0:204              Constant:
0:204                1 (const int)
0:205      move second child to first child ( temp highp 3-component vector of uint)
0:205        vector swizzle ( temp highp 3-component vector of uint)
0:205          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:205            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205              Constant:
0:205                1 (const int)
0:205            Constant:
0:205              2 (const int)
0:205          Sequence
0:205            Constant:
0:205              0 (const int)
0:205            Constant:
0:205              1 (const int)
0:205            Constant:
0:205              2 (const int)
0:205        subgroupInclusiveOr ( global highp 3-component vector of uint)
0:205          vector swizzle ( temp highp 3-component vector of uint)
0:205            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:205              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205                Constant:
0:205                  2 (const int)
0:205              Constant:
0:205                2 (const int)
0:205            Sequence
0:205              Constant:
0:205                0 (const int)
0:205              Constant:
0:205                1 (const int)
0:205              Constant:
0:205                2 (const int)
0:206      move second child to first child ( temp highp 4-component vector of uint)
0:206        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:206          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206            Constant:
0:206              1 (const int)
0:206          Constant:
0:206            2 (const int)
0:206        subgroupInclusiveOr ( global highp 4-component vector of uint)
0:206          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:206            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206              Constant:
0:206                3 (const int)
0:206            Constant:
0:206              2 (const int)
0:208      move second child to first child ( temp highp int)
0:208        direct index ( temp highp int)
0:208          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:208            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208              Constant:
0:208                2 (const int)
0:208            Constant:
0:208              1 (const int)
0:208          Constant:
0:208            0 (const int)
0:208        Convert bool to int ( temp highp int)
0:208          subgroupInclusiveOr ( global bool)
0:208            Compare Less Than ( temp bool)
0:208              direct index ( temp highp int)
0:208                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:208                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208                    Constant:
0:208                      0 (const int)
0:208                  Constant:
0:208                    1 (const int)
0:208                Constant:
0:208                  0 (const int)
0:208              Constant:
0:208                0 (const int)
0:209      move second child to first child ( temp highp 2-component vector of int)
0:209        vector swizzle ( temp highp 2-component vector of int)
0:209          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:209            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209              Constant:
0:209                2 (const int)
0:209            Constant:
0:209              1 (const int)
0:209          Sequence
0:209            Constant:
0:209              0 (const int)
0:209            Constant:
0:209              1 (const int)
0:209        Convert bool to int ( temp highp 2-component vector of int)
0:209          subgroupInclusiveOr ( global 2-component vector of bool)
0:209            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:209              vector swizzle ( temp highp 2-component vector of int)
0:209                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:209                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209                    Constant:
0:209                      1 (const int)
0:209                  Constant:
0:209                    1 (const int)
0:209                Sequence
0:209                  Constant:
0:209                    0 (const int)
0:209                  Constant:
0:209                    1 (const int)
0:209              Constant:
0:209                0 (const int)
0:209                0 (const int)
0:210      move second child to first child ( temp highp 3-component vector of int)
0:210        vector swizzle ( temp highp 3-component vector of int)
0:210          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:210            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210              Constant:
0:210                2 (const int)
0:210            Constant:
0:210              1 (const int)
0:210          Sequence
0:210            Constant:
0:210              0 (const int)
0:210            Constant:
0:210              1 (const int)
0:210            Constant:
0:210              2 (const int)
0:210        Convert bool to int ( temp highp 3-component vector of int)
0:210          subgroupInclusiveOr ( global 3-component vector of bool)
0:210            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:210              vector swizzle ( temp highp 3-component vector of int)
0:210                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:210                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210                    Constant:
0:210                      1 (const int)
0:210                  Constant:
0:210                    1 (const int)
0:210                Sequence
0:210                  Constant:
0:210                    0 (const int)
0:210                  Constant:
0:210                    1 (const int)
0:210                  Constant:
0:210                    2 (const int)
0:210              Constant:
0:210                0 (const int)
0:210                0 (const int)
0:210                0 (const int)
0:211      move second child to first child ( temp highp 4-component vector of int)
0:211        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:211          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211            Constant:
0:211              2 (const int)
0:211          Constant:
0:211            1 (const int)
0:211        Convert bool to int ( temp highp 4-component vector of int)
0:211          subgroupInclusiveOr ( global 4-component vector of bool)
0:211            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:211              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:211                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211                  Constant:
0:211                    1 (const int)
0:211                Constant:
0:211                  1 (const int)
0:211              Constant:
0:211                0 (const int)
0:211                0 (const int)
0:211                0 (const int)
0:211                0 (const int)
0:213      move second child to first child ( temp highp int)
0:213        direct index ( temp highp int)
0:213          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:213            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213              Constant:
0:213                3 (const int)
0:213            Constant:
0:213              1 (const int)
0:213          Constant:
0:213            0 (const int)
0:213        subgroupInclusiveXor ( global highp int)
0:213          direct index ( temp highp int)
0:213            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:213              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213                Constant:
0:213                  0 (const int)
0:213              Constant:
0:213                1 (const int)
0:213            Constant:
0:213              0 (const int)
0:214      move second child to first child ( temp highp 2-component vector of int)
0:214        vector swizzle ( temp highp 2-component vector of int)
0:214          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:214            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214              Constant:
0:214                3 (const int)
0:214            Constant:
0:214              1 (const int)
0:214          Sequence
0:214            Constant:
0:214              0 (const int)
0:214            Constant:
0:214              1 (const int)
0:214        subgroupInclusiveXor ( global highp 2-component vector of int)
0:214          vector swizzle ( temp highp 2-component vector of int)
0:214            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:214              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214                Constant:
0:214                  1 (const int)
0:214              Constant:
0:214                1 (const int)
0:214            Sequence
0:214              Constant:
0:214                0 (const int)
0:214              Constant:
0:214                1 (const int)
0:215      move second child to first child ( temp highp 3-component vector of int)
0:215        vector swizzle ( temp highp 3-component vector of int)
0:215          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:215            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215              Constant:
0:215                3 (const int)
0:215            Constant:
0:215              1 (const int)
0:215          Sequence
0:215            Constant:
0:215              0 (const int)
0:215            Constant:
0:215              1 (const int)
0:215            Constant:
0:215              2 (const int)
0:215        subgroupInclusiveXor ( global highp 3-component vector of int)
0:215          vector swizzle ( temp highp 3-component vector of int)
0:215            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:215              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215                Constant:
0:215                  2 (const int)
0:215              Constant:
0:215                1 (const int)
0:215            Sequence
0:215              Constant:
0:215                0 (const int)
0:215              Constant:
0:215                1 (const int)
0:215              Constant:
0:215                2 (const int)
0:216      move second child to first child ( temp highp 4-component vector of int)
0:216        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:216          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216            Constant:
0:216              3 (const int)
0:216          Constant:
0:216            1 (const int)
0:216        subgroupInclusiveXor ( global highp 4-component vector of int)
0:216          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:216            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216              Constant:
0:216                3 (const int)
0:216            Constant:
0:216              1 (const int)
0:218      move second child to first child ( temp highp uint)
0:218        direct index ( temp highp uint)
0:218          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:218            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218              Constant:
0:218                0 (const int)
0:218            Constant:
0:218              2 (const int)
0:218          Constant:
0:218            0 (const int)
0:218        subgroupInclusiveXor ( global highp uint)
0:218          direct index ( temp highp uint)
0:218            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:218              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218                Constant:
0:218                  0 (const int)
0:218              Constant:
0:218                2 (const int)
0:218            Constant:
0:218              0 (const int)
0:219      move second child to first child ( temp highp 2-component vector of uint)
0:219        vector swizzle ( temp highp 2-component vector of uint)
0:219          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:219            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219              Constant:
0:219                0 (const int)
0:219            Constant:
0:219              2 (const int)
0:219          Sequence
0:219            Constant:
0:219              0 (const int)
0:219            Constant:
0:219              1 (const int)
0:219        subgroupInclusiveXor ( global highp 2-component vector of uint)
0:219          vector swizzle ( temp highp 2-component vector of uint)
0:219            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:219              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219                Constant:
0:219                  1 (const int)
0:219              Constant:
0:219                2 (const int)
0:219            Sequence
0:219              Constant:
0:219                0 (const int)
0:219              Constant:
0:219                1 (const int)
0:220      move second child to first child ( temp highp 3-component vector of uint)
0:220        vector swizzle ( temp highp 3-component vector of uint)
0:220          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:220            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220              Constant:
0:220                0 (const int)
0:220            Constant:
0:220              2 (const int)
0:220          Sequence
0:220            Constant:
0:220              0 (const int)
0:220            Constant:
0:220              1 (const int)
0:220            Constant:
0:220              2 (const int)
0:220        subgroupInclusiveXor ( global highp 3-component vector of uint)
0:220          vector swizzle ( temp highp 3-component vector of uint)
0:220            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:220              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220                Constant:
0:220                  2 (const int)
0:220              Constant:
0:220                2 (const int)
0:220            Sequence
0:220              Constant:
0:220                0 (const int)
0:220              Constant:
0:220                1 (const int)
0:220              Constant:
0:220                2 (const int)
0:221      move second child to first child ( temp highp 4-component vector of uint)
0:221        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:221          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221            Constant:
0:221              0 (const int)
0:221          Constant:
0:221            2 (const int)
0:221        subgroupInclusiveXor ( global highp 4-component vector of uint)
0:221          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:221            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221              Constant:
0:221                3 (const int)
0:221            Constant:
0:221              2 (const int)
0:223      move second child to first child ( temp highp int)
0:223        direct index ( temp highp int)
0:223          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:223            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223              Constant:
0:223                1 (const int)
0:223            Constant:
0:223              1 (const int)
0:223          Constant:
0:223            0 (const int)
0:223        Convert bool to int ( temp highp int)
0:223          subgroupInclusiveXor ( global bool)
0:223            Compare Less Than ( temp bool)
0:223              direct index ( temp highp int)
0:223                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:223                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223                    Constant:
0:223                      0 (const int)
0:223                  Constant:
0:223                    1 (const int)
0:223                Constant:
0:223                  0 (const int)
0:223              Constant:
0:223                0 (const int)
0:224      move second child to first child ( temp highp 2-component vector of int)
0:224        vector swizzle ( temp highp 2-component vector of int)
0:224          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:224            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224              Constant:
0:224                1 (const int)
0:224            Constant:
0:224              1 (const int)
0:224          Sequence
0:224            Constant:
0:224              0 (const int)
0:224            Constant:
0:224              1 (const int)
0:224        Convert bool to int ( temp highp 2-component vector of int)
0:224          subgroupInclusiveXor ( global 2-component vector of bool)
0:224            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:224              vector swizzle ( temp highp 2-component vector of int)
0:224                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:224                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224                    Constant:
0:224                      1 (const int)
0:224                  Constant:
0:224                    1 (const int)
0:224                Sequence
0:224                  Constant:
0:224                    0 (const int)
0:224                  Constant:
0:224                    1 (const int)
0:224              Constant:
0:224                0 (const int)
0:224                0 (const int)
0:225      move second child to first child ( temp highp 3-component vector of int)
0:225        vector swizzle ( temp highp 3-component vector of int)
0:225          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:225            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225              Constant:
0:225                1 (const int)
0:225            Constant:
0:225              1 (const int)
0:225          Sequence
0:225            Constant:
0:225              0 (const int)
0:225            Constant:
0:225              1 (const int)
0:225            Constant:
0:225              2 (const int)
0:225        Convert bool to int ( temp highp 3-component vector of int)
0:225          subgroupInclusiveXor ( global 3-component vector of bool)
0:225            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:225              vector swizzle ( temp highp 3-component vector of int)
0:225                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:225                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225                    Constant:
0:225                      1 (const int)
0:225                  Constant:
0:225                    1 (const int)
0:225                Sequence
0:225                  Constant:
0:225                    0 (const int)
0:225                  Constant:
0:225                    1 (const int)
0:225                  Constant:
0:225                    2 (const int)
0:225              Constant:
0:225                0 (const int)
0:225                0 (const int)
0:225                0 (const int)
0:226      move second child to first child ( temp highp 4-component vector of int)
0:226        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:226          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226            Constant:
0:226              1 (const int)
0:226          Constant:
0:226            1 (const int)
0:226        Convert bool to int ( temp highp 4-component vector of int)
0:226          subgroupInclusiveXor ( global 4-component vector of bool)
0:226            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:226              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:226                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226                  Constant:
0:226                    1 (const int)
0:226                Constant:
0:226                  1 (const int)
0:226              Constant:
0:226                0 (const int)
0:226                0 (const int)
0:226                0 (const int)
0:226                0 (const int)
0:228      move second child to first child ( temp highp float)
0:228        direct index ( temp highp float)
0:228          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:228            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228              Constant:
0:228                2 (const int)
0:228            Constant:
0:228              0 (const int)
0:228          Constant:
0:228            0 (const int)
0:228        subgroupExclusiveAdd ( global highp float)
0:228          direct index ( temp highp float)
0:228            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:228              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228                Constant:
0:228                  0 (const int)
0:228              Constant:
0:228                0 (const int)
0:228            Constant:
0:228              0 (const int)
0:229      move second child to first child ( temp highp 2-component vector of float)
0:229        vector swizzle ( temp highp 2-component vector of float)
0:229          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:229            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229              Constant:
0:229                2 (const int)
0:229            Constant:
0:229              0 (const int)
0:229          Sequence
0:229            Constant:
0:229              0 (const int)
0:229            Constant:
0:229              1 (const int)
0:229        subgroupExclusiveAdd ( global highp 2-component vector of float)
0:229          vector swizzle ( temp highp 2-component vector of float)
0:229            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:229              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229                Constant:
0:229                  1 (const int)
0:229              Constant:
0:229                0 (const int)
0:229            Sequence
0:229              Constant:
0:229                0 (const int)
0:229              Constant:
0:229                1 (const int)
0:230      move second child to first child ( temp highp 3-component vector of float)
0:230        vector swizzle ( temp highp 3-component vector of float)
0:230          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:230            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230              Constant:
0:230                2 (const int)
0:230            Constant:
0:230              0 (const int)
0:230          Sequence
0:230            Constant:
0:230              0 (const int)
0:230            Constant:
0:230              1 (const int)
0:230            Constant:
0:230              2 (const int)
0:230        subgroupExclusiveAdd ( global highp 3-component vector of float)
0:230          vector swizzle ( temp highp 3-component vector of float)
0:230            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:230              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230                Constant:
0:230                  2 (const int)
0:230              Constant:
0:230                0 (const int)
0:230            Sequence
0:230              Constant:
0:230                0 (const int)
0:230              Constant:
0:230                1 (const int)
0:230              Constant:
0:230                2 (const int)
0:231      move second child to first child ( temp highp 4-component vector of float)
0:231        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:231          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231            Constant:
0:231              2 (const int)
0:231          Constant:
0:231            0 (const int)
0:231        subgroupExclusiveAdd ( global highp 4-component vector of float)
0:231          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:231            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231              Constant:
0:231                3 (const int)
0:231            Constant:
0:231              0 (const int)
0:233      move second child to first child ( temp highp int)
0:233        direct index ( temp highp int)
0:233          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:233            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233              Constant:
0:233                3 (const int)
0:233            Constant:
0:233              1 (const int)
0:233          Constant:
0:233            0 (const int)
0:233        subgroupExclusiveAdd ( global highp int)
0:233          direct index ( temp highp int)
0:233            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:233              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233                Constant:
0:233                  0 (const int)
0:233              Constant:
0:233                1 (const int)
0:233            Constant:
0:233              0 (const int)
0:234      move second child to first child ( temp highp 2-component vector of int)
0:234        vector swizzle ( temp highp 2-component vector of int)
0:234          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:234            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234              Constant:
0:234                3 (const int)
0:234            Constant:
0:234              1 (const int)
0:234          Sequence
0:234            Constant:
0:234              0 (const int)
0:234            Constant:
0:234              1 (const int)
0:234        subgroupExclusiveAdd ( global highp 2-component vector of int)
0:234          vector swizzle ( temp highp 2-component vector of int)
0:234            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:234              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234                Constant:
0:234                  1 (const int)
0:234              Constant:
0:234                1 (const int)
0:234            Sequence
0:234              Constant:
0:234                0 (const int)
0:234              Constant:
0:234                1 (const int)
0:235      move second child to first child ( temp highp 3-component vector of int)
0:235        vector swizzle ( temp highp 3-component vector of int)
0:235          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:235            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235              Constant:
0:235                3 (const int)
0:235            Constant:
0:235              1 (const int)
0:235          Sequence
0:235            Constant:
0:235              0 (const int)
0:235            Constant:
0:235              1 (const int)
0:235            Constant:
0:235              2 (const int)
0:235        subgroupExclusiveAdd ( global highp 3-component vector of int)
0:235          vector swizzle ( temp highp 3-component vector of int)
0:235            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:235              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235                Constant:
0:235                  2 (const int)
0:235              Constant:
0:235                1 (const int)
0:235            Sequence
0:235              Constant:
0:235                0 (const int)
0:235              Constant:
0:235                1 (const int)
0:235              Constant:
0:235                2 (const int)
0:236      move second child to first child ( temp highp 4-component vector of int)
0:236        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:236          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236            Constant:
0:236              3 (const int)
0:236          Constant:
0:236            1 (const int)
0:236        subgroupExclusiveAdd ( global highp 4-component vector of int)
0:236          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:236            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236              Constant:
0:236                3 (const int)
0:236            Constant:
0:236              1 (const int)
0:238      move second child to first child ( temp highp uint)
0:238        direct index ( temp highp uint)
0:238          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:238            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238              Constant:
0:238                0 (const int)
0:238            Constant:
0:238              2 (const int)
0:238          Constant:
0:238            0 (const int)
0:238        subgroupExclusiveAdd ( global highp uint)
0:238          direct index ( temp highp uint)
0:238            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:238              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238                Constant:
0:238                  0 (const int)
0:238              Constant:
0:238                2 (const int)
0:238            Constant:
0:238              0 (const int)
0:239      move second child to first child ( temp highp 2-component vector of uint)
0:239        vector swizzle ( temp highp 2-component vector of uint)
0:239          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:239            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239              Constant:
0:239                0 (const int)
0:239            Constant:
0:239              2 (const int)
0:239          Sequence
0:239            Constant:
0:239              0 (const int)
0:239            Constant:
0:239              1 (const int)
0:239        subgroupExclusiveAdd ( global highp 2-component vector of uint)
0:239          vector swizzle ( temp highp 2-component vector of uint)
0:239            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:239              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239                Constant:
0:239                  1 (const int)
0:239              Constant:
0:239                2 (const int)
0:239            Sequence
0:239              Constant:
0:239                0 (const int)
0:239              Constant:
0:239                1 (const int)
0:240      move second child to first child ( temp highp 3-component vector of uint)
0:240        vector swizzle ( temp highp 3-component vector of uint)
0:240          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:240            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240              Constant:
0:240                0 (const int)
0:240            Constant:
0:240              2 (const int)
0:240          Sequence
0:240            Constant:
0:240              0 (const int)
0:240            Constant:
0:240              1 (const int)
0:240            Constant:
0:240              2 (const int)
0:240        subgroupExclusiveAdd ( global highp 3-component vector of uint)
0:240          vector swizzle ( temp highp 3-component vector of uint)
0:240            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:240              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240                Constant:
0:240                  2 (const int)
0:240              Constant:
0:240                2 (const int)
0:240            Sequence
0:240              Constant:
0:240                0 (const int)
0:240              Constant:
0:240                1 (const int)
0:240              Constant:
0:240                2 (const int)
0:241      move second child to first child ( temp highp 4-component vector of uint)
0:241        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:241          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241            Constant:
0:241              0 (const int)
0:241          Constant:
0:241            2 (const int)
0:241        subgroupExclusiveAdd ( global highp 4-component vector of uint)
0:241          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:241            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241              Constant:
0:241                3 (const int)
0:241            Constant:
0:241              2 (const int)
0:243      move second child to first child ( temp highp float)
0:243        direct index ( temp highp float)
0:243          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:243            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243              Constant:
0:243                1 (const int)
0:243            Constant:
0:243              0 (const int)
0:243          Constant:
0:243            0 (const int)
0:243        subgroupExclusiveMul ( global highp float)
0:243          direct index ( temp highp float)
0:243            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:243              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243                Constant:
0:243                  0 (const int)
0:243              Constant:
0:243                0 (const int)
0:243            Constant:
0:243              0 (const int)
0:244      move second child to first child ( temp highp 2-component vector of float)
0:244        vector swizzle ( temp highp 2-component vector of float)
0:244          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:244            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244              Constant:
0:244                1 (const int)
0:244            Constant:
0:244              0 (const int)
0:244          Sequence
0:244            Constant:
0:244              0 (const int)
0:244            Constant:
0:244              1 (const int)
0:244        subgroupExclusiveMul ( global highp 2-component vector of float)
0:244          vector swizzle ( temp highp 2-component vector of float)
0:244            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:244              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244                Constant:
0:244                  1 (const int)
0:244              Constant:
0:244                0 (const int)
0:244            Sequence
0:244              Constant:
0:244                0 (const int)
0:244              Constant:
0:244                1 (const int)
0:245      move second child to first child ( temp highp 3-component vector of float)
0:245        vector swizzle ( temp highp 3-component vector of float)
0:245          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:245            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245              Constant:
0:245                1 (const int)
0:245            Constant:
0:245              0 (const int)
0:245          Sequence
0:245            Constant:
0:245              0 (const int)
0:245            Constant:
0:245              1 (const int)
0:245            Constant:
0:245              2 (const int)
0:245        subgroupExclusiveMul ( global highp 3-component vector of float)
0:245          vector swizzle ( temp highp 3-component vector of float)
0:245            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:245              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245                Constant:
0:245                  2 (const int)
0:245              Constant:
0:245                0 (const int)
0:245            Sequence
0:245              Constant:
0:245                0 (const int)
0:245              Constant:
0:245                1 (const int)
0:245              Constant:
0:245                2 (const int)
0:246      move second child to first child ( temp highp 4-component vector of float)
0:246        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:246          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246            Constant:
0:246              1 (const int)
0:246          Constant:
0:246            0 (const int)
0:246        subgroupExclusiveMul ( global highp 4-component vector of float)
0:246          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:246            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246              Constant:
0:246                3 (const int)
0:246            Constant:
0:246              0 (const int)
0:248      move second child to first child ( temp highp int)
0:248        direct index ( temp highp int)
0:248          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:248            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248              Constant:
0:248                2 (const int)
0:248            Constant:
0:248              1 (const int)
0:248          Constant:
0:248            0 (const int)
0:248        subgroupExclusiveMul ( global highp int)
0:248          direct index ( temp highp int)
0:248            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:248              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248                Constant:
0:248                  0 (const int)
0:248              Constant:
0:248                1 (const int)
0:248            Constant:
0:248              0 (const int)
0:249      move second child to first child ( temp highp 2-component vector of int)
0:249        vector swizzle ( temp highp 2-component vector of int)
0:249          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:249            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249              Constant:
0:249                2 (const int)
0:249            Constant:
0:249              1 (const int)
0:249          Sequence
0:249            Constant:
0:249              0 (const int)
0:249            Constant:
0:249              1 (const int)
0:249        subgroupExclusiveMul ( global highp 2-component vector of int)
0:249          vector swizzle ( temp highp 2-component vector of int)
0:249            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:249              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249                Constant:
0:249                  1 (const int)
0:249              Constant:
0:249                1 (const int)
0:249            Sequence
0:249              Constant:
0:249                0 (const int)
0:249              Constant:
0:249                1 (const int)
0:250      move second child to first child ( temp highp 3-component vector of int)
0:250        vector swizzle ( temp highp 3-component vector of int)
0:250          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:250            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250              Constant:
0:250                2 (const int)
0:250            Constant:
0:250              1 (const int)
0:250          Sequence
0:250            Constant:
0:250              0 (const int)
0:250            Constant:
0:250              1 (const int)
0:250            Constant:
0:250              2 (const int)
0:250        subgroupExclusiveMul ( global highp 3-component vector of int)
0:250          vector swizzle ( temp highp 3-component vector of int)
0:250            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:250              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250                Constant:
0:250                  2 (const int)
0:250              Constant:
0:250                1 (const int)
0:250            Sequence
0:250              Constant:
0:250                0 (const int)
0:250              Constant:
0:250                1 (const int)
0:250              Constant:
0:250                2 (const int)
0:251      move second child to first child ( temp highp 4-component vector of int)
0:251        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:251          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251            Constant:
0:251              2 (const int)
0:251          Constant:
0:251            1 (const int)
0:251        subgroupExclusiveMul ( global highp 4-component vector of int)
0:251          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:251            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251              Constant:
0:251                3 (const int)
0:251            Constant:
0:251              1 (const int)
0:253      move second child to first child ( temp highp uint)
0:253        direct index ( temp highp uint)
0:253          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:253            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253              Constant:
0:253                3 (const int)
0:253            Constant:
0:253              2 (const int)
0:253          Constant:
0:253            0 (const int)
0:253        subgroupExclusiveMul ( global highp uint)
0:253          direct index ( temp highp uint)
0:253            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:253              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253                Constant:
0:253                  0 (const int)
0:253              Constant:
0:253                2 (const int)
0:253            Constant:
0:253              0 (const int)
0:254      move second child to first child ( temp highp 2-component vector of uint)
0:254        vector swizzle ( temp highp 2-component vector of uint)
0:254          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:254            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254              Constant:
0:254                3 (const int)
0:254            Constant:
0:254              2 (const int)
0:254          Sequence
0:254            Constant:
0:254              0 (const int)
0:254            Constant:
0:254              1 (const int)
0:254        subgroupExclusiveMul ( global highp 2-component vector of uint)
0:254          vector swizzle ( temp highp 2-component vector of uint)
0:254            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:254              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254                Constant:
0:254                  1 (const int)
0:254              Constant:
0:254                2 (const int)
0:254            Sequence
0:254              Constant:
0:254                0 (const int)
0:254              Constant:
0:254                1 (const int)
0:255      move second child to first child ( temp highp 3-component vector of uint)
0:255        vector swizzle ( temp highp 3-component vector of uint)
0:255          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:255            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255              Constant:
0:255                3 (const int)
0:255            Constant:
0:255              2 (const int)
0:255          Sequence
0:255            Constant:
0:255              0 (const int)
0:255            Constant:
0:255              1 (const int)
0:255            Constant:
0:255              2 (const int)
0:255        subgroupExclusiveMul ( global highp 3-component vector of uint)
0:255          vector swizzle ( temp highp 3-component vector of uint)
0:255            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:255              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255                Constant:
0:255                  2 (const int)
0:255              Constant:
0:255                2 (const int)
0:255            Sequence
0:255              Constant:
0:255                0 (const int)
0:255              Constant:
0:255                1 (const int)
0:255              Constant:
0:255                2 (const int)
0:256      move second child to first child ( temp highp 4-component vector of uint)
0:256        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:256          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256            Constant:
0:256              3 (const int)
0:256          Constant:
0:256            2 (const int)
0:256        subgroupExclusiveMul ( global highp 4-component vector of uint)
0:256          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:256            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256              Constant:
0:256                3 (const int)
0:256            Constant:
0:256              2 (const int)
0:258      move second child to first child ( temp highp float)
0:258        direct index ( temp highp float)
0:258          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:258            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258              Constant:
0:258                0 (const int)
0:258            Constant:
0:258              0 (const int)
0:258          Constant:
0:258            0 (const int)
0:258        subgroupExclusiveMin ( global highp float)
0:258          direct index ( temp highp float)
0:258            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:258              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258                Constant:
0:258                  0 (const int)
0:258              Constant:
0:258                0 (const int)
0:258            Constant:
0:258              0 (const int)
0:259      move second child to first child ( temp highp 2-component vector of float)
0:259        vector swizzle ( temp highp 2-component vector of float)
0:259          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:259            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259              Constant:
0:259                0 (const int)
0:259            Constant:
0:259              0 (const int)
0:259          Sequence
0:259            Constant:
0:259              0 (const int)
0:259            Constant:
0:259              1 (const int)
0:259        subgroupExclusiveMin ( global highp 2-component vector of float)
0:259          vector swizzle ( temp highp 2-component vector of float)
0:259            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:259              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259                Constant:
0:259                  1 (const int)
0:259              Constant:
0:259                0 (const int)
0:259            Sequence
0:259              Constant:
0:259                0 (const int)
0:259              Constant:
0:259                1 (const int)
0:260      move second child to first child ( temp highp 3-component vector of float)
0:260        vector swizzle ( temp highp 3-component vector of float)
0:260          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:260            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260              Constant:
0:260                0 (const int)
0:260            Constant:
0:260              0 (const int)
0:260          Sequence
0:260            Constant:
0:260              0 (const int)
0:260            Constant:
0:260              1 (const int)
0:260            Constant:
0:260              2 (const int)
0:260        subgroupExclusiveMin ( global highp 3-component vector of float)
0:260          vector swizzle ( temp highp 3-component vector of float)
0:260            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:260              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260                Constant:
0:260                  2 (const int)
0:260              Constant:
0:260                0 (const int)
0:260            Sequence
0:260              Constant:
0:260                0 (const int)
0:260              Constant:
0:260                1 (const int)
0:260              Constant:
0:260                2 (const int)
0:261      move second child to first child ( temp highp 4-component vector of float)
0:261        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:261          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261            Constant:
0:261              0 (const int)
0:261          Constant:
0:261            0 (const int)
0:261        subgroupExclusiveMin ( global highp 4-component vector of float)
0:261          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:261            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261              Constant:
0:261                3 (const int)
0:261            Constant:
0:261              0 (const int)
0:263      move second child to first child ( temp highp int)
0:263        direct index ( temp highp int)
0:263          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:263            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263              Constant:
0:263                1 (const int)
0:263            Constant:
0:263              1 (const int)
0:263          Constant:
0:263            0 (const int)
0:263        subgroupExclusiveMin ( global highp int)
0:263          direct index ( temp highp int)
0:263            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:263              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263                Constant:
0:263                  0 (const int)
0:263              Constant:
0:263                1 (const int)
0:263            Constant:
0:263              0 (const int)
0:264      move second child to first child ( temp highp 2-component vector of int)
0:264        vector swizzle ( temp highp 2-component vector of int)
0:264          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:264            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264              Constant:
0:264                1 (const int)
0:264            Constant:
0:264              1 (const int)
0:264          Sequence
0:264            Constant:
0:264              0 (const int)
0:264            Constant:
0:264              1 (const int)
0:264        subgroupExclusiveMin ( global highp 2-component vector of int)
0:264          vector swizzle ( temp highp 2-component vector of int)
0:264            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:264              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264                Constant:
0:264                  1 (const int)
0:264              Constant:
0:264                1 (const int)
0:264            Sequence
0:264              Constant:
0:264                0 (const int)
0:264              Constant:
0:264                1 (const int)
0:265      move second child to first child ( temp highp 3-component vector of int)
0:265        vector swizzle ( temp highp 3-component vector of int)
0:265          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:265            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265              Constant:
0:265                1 (const int)
0:265            Constant:
0:265              1 (const int)
0:265          Sequence
0:265            Constant:
0:265              0 (const int)
0:265            Constant:
0:265              1 (const int)
0:265            Constant:
0:265              2 (const int)
0:265        subgroupExclusiveMin ( global highp 3-component vector of int)
0:265          vector swizzle ( temp highp 3-component vector of int)
0:265            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:265              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265                Constant:
0:265                  2 (const int)
0:265              Constant:
0:265                1 (const int)
0:265            Sequence
0:265              Constant:
0:265                0 (const int)
0:265              Constant:
0:265                1 (const int)
0:265              Constant:
0:265                2 (const int)
0:266      move second child to first child ( temp highp 4-component vector of int)
0:266        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:266          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266            Constant:
0:266              1 (const int)
0:266          Constant:
0:266            1 (const int)
0:266        subgroupExclusiveMin ( global highp 4-component vector of int)
0:266          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:266            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266              Constant:
0:266                3 (const int)
0:266            Constant:
0:266              1 (const int)
0:268      move second child to first child ( temp highp uint)
0:268        direct index ( temp highp uint)
0:268          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:268            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268              Constant:
0:268                2 (const int)
0:268            Constant:
0:268              2 (const int)
0:268          Constant:
0:268            0 (const int)
0:268        subgroupExclusiveMin ( global highp uint)
0:268          direct index ( temp highp uint)
0:268            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:268              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268                Constant:
0:268                  0 (const int)
0:268              Constant:
0:268                2 (const int)
0:268            Constant:
0:268              0 (const int)
0:269      move second child to first child ( temp highp 2-component vector of uint)
0:269        vector swizzle ( temp highp 2-component vector of uint)
0:269          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:269            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269              Constant:
0:269                2 (const int)
0:269            Constant:
0:269              2 (const int)
0:269          Sequence
0:269            Constant:
0:269              0 (const int)
0:269            Constant:
0:269              1 (const int)
0:269        subgroupExclusiveMin ( global highp 2-component vector of uint)
0:269          vector swizzle ( temp highp 2-component vector of uint)
0:269            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:269              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269                Constant:
0:269                  1 (const int)
0:269              Constant:
0:269                2 (const int)
0:269            Sequence
0:269              Constant:
0:269                0 (const int)
0:269              Constant:
0:269                1 (const int)
0:270      move second child to first child ( temp highp 3-component vector of uint)
0:270        vector swizzle ( temp highp 3-component vector of uint)
0:270          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:270            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270              Constant:
0:270                2 (const int)
0:270            Constant:
0:270              2 (const int)
0:270          Sequence
0:270            Constant:
0:270              0 (const int)
0:270            Constant:
0:270              1 (const int)
0:270            Constant:
0:270              2 (const int)
0:270        subgroupExclusiveMin ( global highp 3-component vector of uint)
0:270          vector swizzle ( temp highp 3-component vector of uint)
0:270            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:270              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270                Constant:
0:270                  2 (const int)
0:270              Constant:
0:270                2 (const int)
0:270            Sequence
0:270              Constant:
0:270                0 (const int)
0:270              Constant:
0:270                1 (const int)
0:270              Constant:
0:270                2 (const int)
0:271      move second child to first child ( temp highp 4-component vector of uint)
0:271        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:271          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271            Constant:
0:271              2 (const int)
0:271          Constant:
0:271            2 (const int)
0:271        subgroupExclusiveMin ( global highp 4-component vector of uint)
0:271          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:271            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271              Constant:
0:271                3 (const int)
0:271            Constant:
0:271              2 (const int)
0:273      move second child to first child ( temp highp float)
0:273        direct index ( temp highp float)
0:273          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:273            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273              Constant:
0:273                3 (const int)
0:273            Constant:
0:273              0 (const int)
0:273          Constant:
0:273            0 (const int)
0:273        subgroupExclusiveMax ( global highp float)
0:273          direct index ( temp highp float)
0:273            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:273              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273                Constant:
0:273                  0 (const int)
0:273              Constant:
0:273                0 (const int)
0:273            Constant:
0:273              0 (const int)
0:274      move second child to first child ( temp highp 2-component vector of float)
0:274        vector swizzle ( temp highp 2-component vector of float)
0:274          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:274            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274              Constant:
0:274                3 (const int)
0:274            Constant:
0:274              0 (const int)
0:274          Sequence
0:274            Constant:
0:274              0 (const int)
0:274            Constant:
0:274              1 (const int)
0:274        subgroupExclusiveMax ( global highp 2-component vector of float)
0:274          vector swizzle ( temp highp 2-component vector of float)
0:274            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:274              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274                Constant:
0:274                  1 (const int)
0:274              Constant:
0:274                0 (const int)
0:274            Sequence
0:274              Constant:
0:274                0 (const int)
0:274              Constant:
0:274                1 (const int)
0:275      move second child to first child ( temp highp 3-component vector of float)
0:275        vector swizzle ( temp highp 3-component vector of float)
0:275          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:275            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275              Constant:
0:275                3 (const int)
0:275            Constant:
0:275              0 (const int)
0:275          Sequence
0:275            Constant:
0:275              0 (const int)
0:275            Constant:
0:275              1 (const int)
0:275            Constant:
0:275              2 (const int)
0:275        subgroupExclusiveMax ( global highp 3-component vector of float)
0:275          vector swizzle ( temp highp 3-component vector of float)
0:275            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:275              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275                Constant:
0:275                  2 (const int)
0:275              Constant:
0:275                0 (const int)
0:275            Sequence
0:275              Constant:
0:275                0 (const int)
0:275              Constant:
0:275                1 (const int)
0:275              Constant:
0:275                2 (const int)
0:276      move second child to first child ( temp highp 4-component vector of float)
0:276        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:276          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276            Constant:
0:276              3 (const int)
0:276          Constant:
0:276            0 (const int)
0:276        subgroupExclusiveMax ( global highp 4-component vector of float)
0:276          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:276            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276              Constant:
0:276                3 (const int)
0:276            Constant:
0:276              0 (const int)
0:278      move second child to first child ( temp highp int)
0:278        direct index ( temp highp int)
0:278          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:278            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278              Constant:
0:278                0 (const int)
0:278            Constant:
0:278              1 (const int)
0:278          Constant:
0:278            0 (const int)
0:278        subgroupExclusiveMax ( global highp int)
0:278          direct index ( temp highp int)
0:278            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:278              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278                Constant:
0:278                  0 (const int)
0:278              Constant:
0:278                1 (const int)
0:278            Constant:
0:278              0 (const int)
0:279      move second child to first child ( temp highp 2-component vector of int)
0:279        vector swizzle ( temp highp 2-component vector of int)
0:279          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:279            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279              Constant:
0:279                0 (const int)
0:279            Constant:
0:279              1 (const int)
0:279          Sequence
0:279            Constant:
0:279              0 (const int)
0:279            Constant:
0:279              1 (const int)
0:279        subgroupExclusiveMax ( global highp 2-component vector of int)
0:279          vector swizzle ( temp highp 2-component vector of int)
0:279            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:279              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279                Constant:
0:279                  1 (const int)
0:279              Constant:
0:279                1 (const int)
0:279            Sequence
0:279              Constant:
0:279                0 (const int)
0:279              Constant:
0:279                1 (const int)
0:280      move second child to first child ( temp highp 3-component vector of int)
0:280        vector swizzle ( temp highp 3-component vector of int)
0:280          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:280            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280              Constant:
0:280                0 (const int)
0:280            Constant:
0:280              1 (const int)
0:280          Sequence
0:280            Constant:
0:280              0 (const int)
0:280            Constant:
0:280              1 (const int)
0:280            Constant:
0:280              2 (const int)
0:280        subgroupExclusiveMax ( global highp 3-component vector of int)
0:280          vector swizzle ( temp highp 3-component vector of int)
0:280            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:280              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280                Constant:
0:280                  2 (const int)
0:280              Constant:
0:280                1 (const int)
0:280            Sequence
0:280              Constant:
0:280                0 (const int)
0:280              Constant:
0:280                1 (const int)
0:280              Constant:
0:280                2 (const int)
0:281      move second child to first child ( temp highp 4-component vector of int)
0:281        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:281          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281            Constant:
0:281              0 (const int)
0:281          Constant:
0:281            1 (const int)
0:281        subgroupExclusiveMax ( global highp 4-component vector of int)
0:281          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:281            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281              Constant:
0:281                3 (const int)
0:281            Constant:
0:281              1 (const int)
0:283      move second child to first child ( temp highp uint)
0:283        direct index ( temp highp uint)
0:283          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:283            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283              Constant:
0:283                1 (const int)
0:283            Constant:
0:283              2 (const int)
0:283          Constant:
0:283            0 (const int)
0:283        subgroupExclusiveMax ( global highp uint)
0:283          direct index ( temp highp uint)
0:283            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:283              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283                Constant:
0:283                  0 (const int)
0:283              Constant:
0:283                2 (const int)
0:283            Constant:
0:283              0 (const int)
0:284      move second child to first child ( temp highp 2-component vector of uint)
0:284        vector swizzle ( temp highp 2-component vector of uint)
0:284          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:284            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284              Constant:
0:284                1 (const int)
0:284            Constant:
0:284              2 (const int)
0:284          Sequence
0:284            Constant:
0:284              0 (const int)
0:284            Constant:
0:284              1 (const int)
0:284        subgroupExclusiveMax ( global highp 2-component vector of uint)
0:284          vector swizzle ( temp highp 2-component vector of uint)
0:284            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:284              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284                Constant:
0:284                  1 (const int)
0:284              Constant:
0:284                2 (const int)
0:284            Sequence
0:284              Constant:
0:284                0 (const int)
0:284              Constant:
0:284                1 (const int)
0:285      move second child to first child ( temp highp 3-component vector of uint)
0:285        vector swizzle ( temp highp 3-component vector of uint)
0:285          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:285            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285              Constant:
0:285                1 (const int)
0:285            Constant:
0:285              2 (const int)
0:285          Sequence
0:285            Constant:
0:285              0 (const int)
0:285            Constant:
0:285              1 (const int)
0:285            Constant:
0:285              2 (const int)
0:285        subgroupExclusiveMax ( global highp 3-component vector of uint)
0:285          vector swizzle ( temp highp 3-component vector of uint)
0:285            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:285              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285                Constant:
0:285                  2 (const int)
0:285              Constant:
0:285                2 (const int)
0:285            Sequence
0:285              Constant:
0:285                0 (const int)
0:285              Constant:
0:285                1 (const int)
0:285              Constant:
0:285                2 (const int)
0:286      move second child to first child ( temp highp 4-component vector of uint)
0:286        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:286          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286            Constant:
0:286              1 (const int)
0:286          Constant:
0:286            2 (const int)
0:286        subgroupExclusiveMax ( global highp 4-component vector of uint)
0:286          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:286            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286              Constant:
0:286                3 (const int)
0:286            Constant:
0:286              2 (const int)
0:288      move second child to first child ( temp highp int)
0:288        direct index ( temp highp int)
0:288          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:288            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288              Constant:
0:288                2 (const int)
0:288            Constant:
0:288              1 (const int)
0:288          Constant:
0:288            0 (const int)
0:288        subgroupExclusiveAnd ( global highp int)
0:288          direct index ( temp highp int)
0:288            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:288              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288                Constant:
0:288                  0 (const int)
0:288              Constant:
0:288                1 (const int)
0:288            Constant:
0:288              0 (const int)
0:289      move second child to first child ( temp highp 2-component vector of int)
0:289        vector swizzle ( temp highp 2-component vector of int)
0:289          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:289            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289              Constant:
0:289                2 (const int)
0:289            Constant:
0:289              1 (const int)
0:289          Sequence
0:289            Constant:
0:289              0 (const int)
0:289            Constant:
0:289              1 (const int)
0:289        subgroupExclusiveAnd ( global highp 2-component vector of int)
0:289          vector swizzle ( temp highp 2-component vector of int)
0:289            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:289              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289                Constant:
0:289                  1 (const int)
0:289              Constant:
0:289                1 (const int)
0:289            Sequence
0:289              Constant:
0:289                0 (const int)
0:289              Constant:
0:289                1 (const int)
0:290      move second child to first child ( temp highp 3-component vector of int)
0:290        vector swizzle ( temp highp 3-component vector of int)
0:290          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:290            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290              Constant:
0:290                2 (const int)
0:290            Constant:
0:290              1 (const int)
0:290          Sequence
0:290            Constant:
0:290              0 (const int)
0:290            Constant:
0:290              1 (const int)
0:290            Constant:
0:290              2 (const int)
0:290        subgroupExclusiveAnd ( global highp 3-component vector of int)
0:290          vector swizzle ( temp highp 3-component vector of int)
0:290            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:290              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290                Constant:
0:290                  2 (const int)
0:290              Constant:
0:290                1 (const int)
0:290            Sequence
0:290              Constant:
0:290                0 (const int)
0:290              Constant:
0:290                1 (const int)
0:290              Constant:
0:290                2 (const int)
0:291      move second child to first child ( temp highp 4-component vector of int)
0:291        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:291          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291            Constant:
0:291              2 (const int)
0:291          Constant:
0:291            1 (const int)
0:291        subgroupExclusiveAnd ( global highp 4-component vector of int)
0:291          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:291            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291              Constant:
0:291                3 (const int)
0:291            Constant:
0:291              1 (const int)
0:293      move second child to first child ( temp highp uint)
0:293        direct index ( temp highp uint)
0:293          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:293            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293              Constant:
0:293                3 (const int)
0:293            Constant:
0:293              2 (const int)
0:293          Constant:
0:293            0 (const int)
0:293        subgroupExclusiveAnd ( global highp uint)
0:293          direct index ( temp highp uint)
0:293            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:293              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293                Constant:
0:293                  0 (const int)
0:293              Constant:
0:293                2 (const int)
0:293            Constant:
0:293              0 (const int)
0:294      move second child to first child ( temp highp 2-component vector of uint)
0:294        vector swizzle ( temp highp 2-component vector of uint)
0:294          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:294            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294              Constant:
0:294                3 (const int)
0:294            Constant:
0:294              2 (const int)
0:294          Sequence
0:294            Constant:
0:294              0 (const int)
0:294            Constant:
0:294              1 (const int)
0:294        subgroupExclusiveAnd ( global highp 2-component vector of uint)
0:294          vector swizzle ( temp highp 2-component vector of uint)
0:294            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:294              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294                Constant:
0:294                  1 (const int)
0:294              Constant:
0:294                2 (const int)
0:294            Sequence
0:294              Constant:
0:294                0 (const int)
0:294              Constant:
0:294                1 (const int)
0:295      move second child to first child ( temp highp 3-component vector of uint)
0:295        vector swizzle ( temp highp 3-component vector of uint)
0:295          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:295            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295              Constant:
0:295                3 (const int)
0:295            Constant:
0:295              2 (const int)
0:295          Sequence
0:295            Constant:
0:295              0 (const int)
0:295            Constant:
0:295              1 (const int)
0:295            Constant:
0:295              2 (const int)
0:295        subgroupExclusiveAnd ( global highp 3-component vector of uint)
0:295          vector swizzle ( temp highp 3-component vector of uint)
0:295            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:295              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295                Constant:
0:295                  2 (const int)
0:295              Constant:
0:295                2 (const int)
0:295            Sequence
0:295              Constant:
0:295                0 (const int)
0:295              Constant:
0:295                1 (const int)
0:295              Constant:
0:295                2 (const int)
0:296      move second child to first child ( temp highp 4-component vector of uint)
0:296        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:296          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296            Constant:
0:296              3 (const int)
0:296          Constant:
0:296            2 (const int)
0:296        subgroupExclusiveAnd ( global highp 4-component vector of uint)
0:296          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:296            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296              Constant:
0:296                3 (const int)
0:296            Constant:
0:296              2 (const int)
0:298      move second child to first child ( temp highp int)
0:298        direct index ( temp highp int)
0:298          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:298            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298              Constant:
0:298                0 (const int)
0:298            Constant:
0:298              1 (const int)
0:298          Constant:
0:298            0 (const int)
0:298        Convert bool to int ( temp highp int)
0:298          subgroupExclusiveAnd ( global bool)
0:298            Compare Less Than ( temp bool)
0:298              direct index ( temp highp int)
0:298                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:298                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298                    Constant:
0:298                      0 (const int)
0:298                  Constant:
0:298                    1 (const int)
0:298                Constant:
0:298                  0 (const int)
0:298              Constant:
0:298                0 (const int)
0:299      move second child to first child ( temp highp 2-component vector of int)
0:299        vector swizzle ( temp highp 2-component vector of int)
0:299          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:299            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299              Constant:
0:299                0 (const int)
0:299            Constant:
0:299              1 (const int)
0:299          Sequence
0:299            Constant:
0:299              0 (const int)
0:299            Constant:
0:299              1 (const int)
0:299        Convert bool to int ( temp highp 2-component vector of int)
0:299          subgroupExclusiveAnd ( global 2-component vector of bool)
0:299            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:299              vector swizzle ( temp highp 2-component vector of int)
0:299                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:299                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299                    Constant:
0:299                      1 (const int)
0:299                  Constant:
0:299                    1 (const int)
0:299                Sequence
0:299                  Constant:
0:299                    0 (const int)
0:299                  Constant:
0:299                    1 (const int)
0:299              Constant:
0:299                0 (const int)
0:299                0 (const int)
0:300      move second child to first child ( temp highp 3-component vector of int)
0:300        vector swizzle ( temp highp 3-component vector of int)
0:300          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:300            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300              Constant:
0:300                0 (const int)
0:300            Constant:
0:300              1 (const int)
0:300          Sequence
0:300            Constant:
0:300              0 (const int)
0:300            Constant:
0:300              1 (const int)
0:300            Constant:
0:300              2 (const int)
0:300        Convert bool to int ( temp highp 3-component vector of int)
0:300          subgroupExclusiveAnd ( global 3-component vector of bool)
0:300            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:300              vector swizzle ( temp highp 3-component vector of int)
0:300                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:300                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300                    Constant:
0:300                      1 (const int)
0:300                  Constant:
0:300                    1 (const int)
0:300                Sequence
0:300                  Constant:
0:300                    0 (const int)
0:300                  Constant:
0:300                    1 (const int)
0:300                  Constant:
0:300                    2 (const int)
0:300              Constant:
0:300                0 (const int)
0:300                0 (const int)
0:300                0 (const int)
0:301      move second child to first child ( temp highp 4-component vector of int)
0:301        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:301          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301            Constant:
0:301              0 (const int)
0:301          Constant:
0:301            1 (const int)
0:301        Convert bool to int ( temp highp 4-component vector of int)
0:301          subgroupExclusiveAnd ( global 4-component vector of bool)
0:301            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:301              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:301                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301                  Constant:
0:301                    1 (const int)
0:301                Constant:
0:301                  1 (const int)
0:301              Constant:
0:301                0 (const int)
0:301                0 (const int)
0:301                0 (const int)
0:301                0 (const int)
0:303      move second child to first child ( temp highp int)
0:303        direct index ( temp highp int)
0:303          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:303            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303              Constant:
0:303                1 (const int)
0:303            Constant:
0:303              1 (const int)
0:303          Constant:
0:303            0 (const int)
0:303        subgroupExclusiveOr ( global highp int)
0:303          direct index ( temp highp int)
0:303            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:303              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303                Constant:
0:303                  0 (const int)
0:303              Constant:
0:303                1 (const int)
0:303            Constant:
0:303              0 (const int)
0:304      move second child to first child ( temp highp 2-component vector of int)
0:304        vector swizzle ( temp highp 2-component vector of int)
0:304          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:304            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304              Constant:
0:304                1 (const int)
0:304            Constant:
0:304              1 (const int)
0:304          Sequence
0:304            Constant:
0:304              0 (const int)
0:304            Constant:
0:304              1 (const int)
0:304        subgroupExclusiveOr ( global highp 2-component vector of int)
0:304          vector swizzle ( temp highp 2-component vector of int)
0:304            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:304              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304                Constant:
0:304                  1 (const int)
0:304              Constant:
0:304                1 (const int)
0:304            Sequence
0:304              Constant:
0:304                0 (const int)
0:304              Constant:
0:304                1 (const int)
0:305      move second child to first child ( temp highp 3-component vector of int)
0:305        vector swizzle ( temp highp 3-component vector of int)
0:305          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:305            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305              Constant:
0:305                1 (const int)
0:305            Constant:
0:305              1 (const int)
0:305          Sequence
0:305            Constant:
0:305              0 (const int)
0:305            Constant:
0:305              1 (const int)
0:305            Constant:
0:305              2 (const int)
0:305        subgroupExclusiveOr ( global highp 3-component vector of int)
0:305          vector swizzle ( temp highp 3-component vector of int)
0:305            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:305              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305                Constant:
0:305                  2 (const int)
0:305              Constant:
0:305                1 (const int)
0:305            Sequence
0:305              Constant:
0:305                0 (const int)
0:305              Constant:
0:305                1 (const int)
0:305              Constant:
0:305                2 (const int)
0:306      move second child to first child ( temp highp 4-component vector of int)
0:306        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:306          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306            Constant:
0:306              1 (const int)
0:306          Constant:
0:306            1 (const int)
0:306        subgroupExclusiveOr ( global highp 4-component vector of int)
0:306          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:306            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306              Constant:
0:306                3 (const int)
0:306            Constant:
0:306              1 (const int)
0:308      move second child to first child ( temp highp uint)
0:308        direct index ( temp highp uint)
0:308          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:308            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308              Constant:
0:308                2 (const int)
0:308            Constant:
0:308              2 (const int)
0:308          Constant:
0:308            0 (const int)
0:308        subgroupExclusiveOr ( global highp uint)
0:308          direct index ( temp highp uint)
0:308            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:308              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308                Constant:
0:308                  0 (const int)
0:308              Constant:
0:308                2 (const int)
0:308            Constant:
0:308              0 (const int)
0:309      move second child to first child ( temp highp 2-component vector of uint)
0:309        vector swizzle ( temp highp 2-component vector of uint)
0:309          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:309            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309              Constant:
0:309                2 (const int)
0:309            Constant:
0:309              2 (const int)
0:309          Sequence
0:309            Constant:
0:309              0 (const int)
0:309            Constant:
0:309              1 (const int)
0:309        subgroupExclusiveOr ( global highp 2-component vector of uint)
0:309          vector swizzle ( temp highp 2-component vector of uint)
0:309            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:309              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309                Constant:
0:309                  1 (const int)
0:309              Constant:
0:309                2 (const int)
0:309            Sequence
0:309              Constant:
0:309                0 (const int)
0:309              Constant:
0:309                1 (const int)
0:310      move second child to first child ( temp highp 3-component vector of uint)
0:310        vector swizzle ( temp highp 3-component vector of uint)
0:310          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:310            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310              Constant:
0:310                2 (const int)
0:310            Constant:
0:310              2 (const int)
0:310          Sequence
0:310            Constant:
0:310              0 (const int)
0:310            Constant:
0:310              1 (const int)
0:310            Constant:
0:310              2 (const int)
0:310        subgroupExclusiveOr ( global highp 3-component vector of uint)
0:310          vector swizzle ( temp highp 3-component vector of uint)
0:310            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:310              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310                Constant:
0:310                  2 (const int)
0:310              Constant:
0:310                2 (const int)
0:310            Sequence
0:310              Constant:
0:310                0 (const int)
0:310              Constant:
0:310                1 (const int)
0:310              Constant:
0:310                2 (const int)
0:311      move second child to first child ( temp highp 4-component vector of uint)
0:311        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:311          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311            Constant:
0:311              2 (const int)
0:311          Constant:
0:311            2 (const int)
0:311        subgroupExclusiveOr ( global highp 4-component vector of uint)
0:311          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:311            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311              Constant:
0:311                3 (const int)
0:311            Constant:
0:311              2 (const int)
0:313      move second child to first child ( temp highp int)
0:313        direct index ( temp highp int)
0:313          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:313            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313              Constant:
0:313                3 (const int)
0:313            Constant:
0:313              1 (const int)
0:313          Constant:
0:313            0 (const int)
0:313        Convert bool to int ( temp highp int)
0:313          subgroupExclusiveOr ( global bool)
0:313            Compare Less Than ( temp bool)
0:313              direct index ( temp highp int)
0:313                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:313                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313                    Constant:
0:313                      0 (const int)
0:313                  Constant:
0:313                    1 (const int)
0:313                Constant:
0:313                  0 (const int)
0:313              Constant:
0:313                0 (const int)
0:314      move second child to first child ( temp highp 2-component vector of int)
0:314        vector swizzle ( temp highp 2-component vector of int)
0:314          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:314            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314              Constant:
0:314                3 (const int)
0:314            Constant:
0:314              1 (const int)
0:314          Sequence
0:314            Constant:
0:314              0 (const int)
0:314            Constant:
0:314              1 (const int)
0:314        Convert bool to int ( temp highp 2-component vector of int)
0:314          subgroupExclusiveOr ( global 2-component vector of bool)
0:314            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:314              vector swizzle ( temp highp 2-component vector of int)
0:314                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:314                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314                    Constant:
0:314                      1 (const int)
0:314                  Constant:
0:314                    1 (const int)
0:314                Sequence
0:314                  Constant:
0:314                    0 (const int)
0:314                  Constant:
0:314                    1 (const int)
0:314              Constant:
0:314                0 (const int)
0:314                0 (const int)
0:315      move second child to first child ( temp highp 3-component vector of int)
0:315        vector swizzle ( temp highp 3-component vector of int)
0:315          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:315            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315              Constant:
0:315                3 (const int)
0:315            Constant:
0:315              1 (const int)
0:315          Sequence
0:315            Constant:
0:315              0 (const int)
0:315            Constant:
0:315              1 (const int)
0:315            Constant:
0:315              2 (const int)
0:315        Convert bool to int ( temp highp 3-component vector of int)
0:315          subgroupExclusiveOr ( global 3-component vector of bool)
0:315            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:315              vector swizzle ( temp highp 3-component vector of int)
0:315                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:315                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315                    Constant:
0:315                      1 (const int)
0:315                  Constant:
0:315                    1 (const int)
0:315                Sequence
0:315                  Constant:
0:315                    0 (const int)
0:315                  Constant:
0:315                    1 (const int)
0:315                  Constant:
0:315                    2 (const int)
0:315              Constant:
0:315                0 (const int)
0:315                0 (const int)
0:315                0 (const int)
0:316      move second child to first child ( temp highp 4-component vector of int)
0:316        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:316          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316            Constant:
0:316              3 (const int)
0:316          Constant:
0:316            1 (const int)
0:316        Convert bool to int ( temp highp 4-component vector of int)
0:316          subgroupExclusiveOr ( global 4-component vector of bool)
0:316            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:316              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:316                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316                  Constant:
0:316                    1 (const int)
0:316                Constant:
0:316                  1 (const int)
0:316              Constant:
0:316                0 (const int)
0:316                0 (const int)
0:316                0 (const int)
0:316                0 (const int)
0:318      move second child to first child ( temp highp int)
0:318        direct index ( temp highp int)
0:318          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:318            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318              Constant:
0:318                0 (const int)
0:318            Constant:
0:318              1 (const int)
0:318          Constant:
0:318            0 (const int)
0:318        subgroupExclusiveXor ( global highp int)
0:318          direct index ( temp highp int)
0:318            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:318              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318                Constant:
0:318                  0 (const int)
0:318              Constant:
0:318                1 (const int)
0:318            Constant:
0:318              0 (const int)
0:319      move second child to first child ( temp highp 2-component vector of int)
0:319        vector swizzle ( temp highp 2-component vector of int)
0:319          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:319            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319              Constant:
0:319                0 (const int)
0:319            Constant:
0:319              1 (const int)
0:319          Sequence
0:319            Constant:
0:319              0 (const int)
0:319            Constant:
0:319              1 (const int)
0:319        subgroupExclusiveXor ( global highp 2-component vector of int)
0:319          vector swizzle ( temp highp 2-component vector of int)
0:319            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:319              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319                Constant:
0:319                  1 (const int)
0:319              Constant:
0:319                1 (const int)
0:319            Sequence
0:319              Constant:
0:319                0 (const int)
0:319              Constant:
0:319                1 (const int)
0:320      move second child to first child ( temp highp 3-component vector of int)
0:320        vector swizzle ( temp highp 3-component vector of int)
0:320          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:320            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320              Constant:
0:320                0 (const int)
0:320            Constant:
0:320              1 (const int)
0:320          Sequence
0:320            Constant:
0:320              0 (const int)
0:320            Constant:
0:320              1 (const int)
0:320            Constant:
0:320              2 (const int)
0:320        subgroupExclusiveXor ( global highp 3-component vector of int)
0:320          vector swizzle ( temp highp 3-component vector of int)
0:320            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:320              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320                Constant:
0:320                  2 (const int)
0:320              Constant:
0:320                1 (const int)
0:320            Sequence
0:320              Constant:
0:320                0 (const int)
0:320              Constant:
0:320                1 (const int)
0:320              Constant:
0:320                2 (const int)
0:321      move second child to first child ( temp highp 4-component vector of int)
0:321        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:321          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321            Constant:
0:321              0 (const int)
0:321          Constant:
0:321            1 (const int)
0:321        subgroupExclusiveXor ( global highp 4-component vector of int)
0:321          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:321            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321              Constant:
0:321                3 (const int)
0:321            Constant:
0:321              1 (const int)
0:323      move second child to first child ( temp highp uint)
0:323        direct index ( temp highp uint)
0:323          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:323            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323              Constant:
0:323                1 (const int)
0:323            Constant:
0:323              2 (const int)
0:323          Constant:
0:323            0 (const int)
0:323        subgroupExclusiveXor ( global highp uint)
0:323          direct index ( temp highp uint)
0:323            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:323              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323                Constant:
0:323                  0 (const int)
0:323              Constant:
0:323                2 (const int)
0:323            Constant:
0:323              0 (const int)
0:324      move second child to first child ( temp highp 2-component vector of uint)
0:324        vector swizzle ( temp highp 2-component vector of uint)
0:324          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:324            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324              Constant:
0:324                1 (const int)
0:324            Constant:
0:324              2 (const int)
0:324          Sequence
0:324            Constant:
0:324              0 (const int)
0:324            Constant:
0:324              1 (const int)
0:324        subgroupExclusiveXor ( global highp 2-component vector of uint)
0:324          vector swizzle ( temp highp 2-component vector of uint)
0:324            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:324              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324                Constant:
0:324                  1 (const int)
0:324              Constant:
0:324                2 (const int)
0:324            Sequence
0:324              Constant:
0:324                0 (const int)
0:324              Constant:
0:324                1 (const int)
0:325      move second child to first child ( temp highp 3-component vector of uint)
0:325        vector swizzle ( temp highp 3-component vector of uint)
0:325          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:325            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325              Constant:
0:325                1 (const int)
0:325            Constant:
0:325              2 (const int)
0:325          Sequence
0:325            Constant:
0:325              0 (const int)
0:325            Constant:
0:325              1 (const int)
0:325            Constant:
0:325              2 (const int)
0:325        subgroupExclusiveXor ( global highp 3-component vector of uint)
0:325          vector swizzle ( temp highp 3-component vector of uint)
0:325            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:325              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325                Constant:
0:325                  2 (const int)
0:325              Constant:
0:325                2 (const int)
0:325            Sequence
0:325              Constant:
0:325                0 (const int)
0:325              Constant:
0:325                1 (const int)
0:325              Constant:
0:325                2 (const int)
0:326      move second child to first child ( temp highp 4-component vector of uint)
0:326        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:326          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326            Constant:
0:326              1 (const int)
0:326          Constant:
0:326            2 (const int)
0:326        subgroupExclusiveXor ( global highp 4-component vector of uint)
0:326          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:326            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326              Constant:
0:326                3 (const int)
0:326            Constant:
0:326              2 (const int)
0:328      move second child to first child ( temp highp int)
0:328        direct index ( temp highp int)
0:328          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:328            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328              Constant:
0:328                2 (const int)
0:328            Constant:
0:328              1 (const int)
0:328          Constant:
0:328            0 (const int)
0:328        Convert bool to int ( temp highp int)
0:328          subgroupExclusiveXor ( global bool)
0:328            Compare Less Than ( temp bool)
0:328              direct index ( temp highp int)
0:328                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:328                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328                    Constant:
0:328                      0 (const int)
0:328                  Constant:
0:328                    1 (const int)
0:328                Constant:
0:328                  0 (const int)
0:328              Constant:
0:328                0 (const int)
0:329      move second child to first child ( temp highp 2-component vector of int)
0:329        vector swizzle ( temp highp 2-component vector of int)
0:329          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:329            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329              Constant:
0:329                2 (const int)
0:329            Constant:
0:329              1 (const int)
0:329          Sequence
0:329            Constant:
0:329              0 (const int)
0:329            Constant:
0:329              1 (const int)
0:329        Convert bool to int ( temp highp 2-component vector of int)
0:329          subgroupExclusiveXor ( global 2-component vector of bool)
0:329            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:329              vector swizzle ( temp highp 2-component vector of int)
0:329                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:329                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329                    Constant:
0:329                      1 (const int)
0:329                  Constant:
0:329                    1 (const int)
0:329                Sequence
0:329                  Constant:
0:329                    0 (const int)
0:329                  Constant:
0:329                    1 (const int)
0:329              Constant:
0:329                0 (const int)
0:329                0 (const int)
0:330      move second child to first child ( temp highp 3-component vector of int)
0:330        vector swizzle ( temp highp 3-component vector of int)
0:330          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:330            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330              Constant:
0:330                2 (const int)
0:330            Constant:
0:330              1 (const int)
0:330          Sequence
0:330            Constant:
0:330              0 (const int)
0:330            Constant:
0:330              1 (const int)
0:330            Constant:
0:330              2 (const int)
0:330        Convert bool to int ( temp highp 3-component vector of int)
0:330          subgroupExclusiveXor ( global 3-component vector of bool)
0:330            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:330              vector swizzle ( temp highp 3-component vector of int)
0:330                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:330                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330                    Constant:
0:330                      1 (const int)
0:330                  Constant:
0:330                    1 (const int)
0:330                Sequence
0:330                  Constant:
0:330                    0 (const int)
0:330                  Constant:
0:330                    1 (const int)
0:330                  Constant:
0:330                    2 (const int)
0:330              Constant:
0:330                0 (const int)
0:330                0 (const int)
0:330                0 (const int)
0:331      move second child to first child ( temp highp 4-component vector of int)
0:331        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:331          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331            Constant:
0:331              2 (const int)
0:331          Constant:
0:331            1 (const int)
0:331        Convert bool to int ( temp highp 4-component vector of int)
0:331          subgroupExclusiveXor ( global 4-component vector of bool)
0:331            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:331              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:331                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331                  Constant:
0:331                    1 (const int)
0:331                Constant:
0:331                  1 (const int)
0:331              Constant:
0:331                0 (const int)
0:331                0 (const int)
0:331                0 (const int)
0:331                0 (const int)
0:?   Linker Objects
0:?     'gl_WorkGroupSize' ( const highp 3-component vector of uint WorkGroupSize)
0:?       8 (const uint)
0:?       1 (const uint)
0:?       1 (const uint)
0:?     'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})


Linked compute stage:


Shader version: 320
Requested GL_KHR_shader_subgroup_arithmetic
Requested GL_KHR_shader_subgroup_basic
local_size = (8, 1, 1)
0:? Sequence
0:14  Function Definition: main( ( global void)
0:14    Function Parameters: 
0:16    Sequence
0:16      Sequence
0:16        move second child to first child ( temp highp uint)
0:16          'invocation' ( temp highp uint)
0:16          mod ( temp mediump uint)
0:16            add ( temp mediump uint)
0:16              'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
0:16              'gl_SubgroupSize' ( in mediump uint SubgroupSize)
0:16            Constant:
0:16              4 (const uint)
0:18      move second child to first child ( temp highp float)
0:18        direct index ( temp highp float)
0:18          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:18            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18              Constant:
0:18                0 (const int)
0:18            Constant:
0:18              0 (const int)
0:18          Constant:
0:18            0 (const int)
0:18        subgroupAdd ( global highp float)
0:18          direct index ( temp highp float)
0:18            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:18              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:18                Constant:
0:18                  0 (const int)
0:18              Constant:
0:18                0 (const int)
0:18            Constant:
0:18              0 (const int)
0:19      move second child to first child ( temp highp 2-component vector of float)
0:19        vector swizzle ( temp highp 2-component vector of float)
0:19          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:19            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19              Constant:
0:19                0 (const int)
0:19            Constant:
0:19              0 (const int)
0:19          Sequence
0:19            Constant:
0:19              0 (const int)
0:19            Constant:
0:19              1 (const int)
0:19        subgroupAdd ( global highp 2-component vector of float)
0:19          vector swizzle ( temp highp 2-component vector of float)
0:19            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:19              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:19                Constant:
0:19                  1 (const int)
0:19              Constant:
0:19                0 (const int)
0:19            Sequence
0:19              Constant:
0:19                0 (const int)
0:19              Constant:
0:19                1 (const int)
0:20      move second child to first child ( temp highp 3-component vector of float)
0:20        vector swizzle ( temp highp 3-component vector of float)
0:20          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:20            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20              Constant:
0:20                0 (const int)
0:20            Constant:
0:20              0 (const int)
0:20          Sequence
0:20            Constant:
0:20              0 (const int)
0:20            Constant:
0:20              1 (const int)
0:20            Constant:
0:20              2 (const int)
0:20        subgroupAdd ( global highp 3-component vector of float)
0:20          vector swizzle ( temp highp 3-component vector of float)
0:20            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:20              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:20                Constant:
0:20                  2 (const int)
0:20              Constant:
0:20                0 (const int)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:20              Constant:
0:20                2 (const int)
0:21      move second child to first child ( temp highp 4-component vector of float)
0:21        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:21          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21            Constant:
0:21              0 (const int)
0:21          Constant:
0:21            0 (const int)
0:21        subgroupAdd ( global highp 4-component vector of float)
0:21          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:21            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:21              Constant:
0:21                3 (const int)
0:21            Constant:
0:21              0 (const int)
0:23      move second child to first child ( temp highp int)
0:23        direct index ( temp highp int)
0:23          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:23            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              1 (const int)
0:23          Constant:
0:23            0 (const int)
0:23        subgroupAdd ( global highp int)
0:23          direct index ( temp highp int)
0:23            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:23              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:23                Constant:
0:23                  0 (const int)
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              0 (const int)
0:24      move second child to first child ( temp highp 2-component vector of int)
0:24        vector swizzle ( temp highp 2-component vector of int)
0:24          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:24            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          Sequence
0:24            Constant:
0:24              0 (const int)
0:24            Constant:
0:24              1 (const int)
0:24        subgroupAdd ( global highp 2-component vector of int)
0:24          vector swizzle ( temp highp 2-component vector of int)
0:24            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:24              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:24                Constant:
0:24                  1 (const int)
0:24              Constant:
0:24                1 (const int)
0:24            Sequence
0:24              Constant:
0:24                0 (const int)
0:24              Constant:
0:24                1 (const int)
0:25      move second child to first child ( temp highp 3-component vector of int)
0:25        vector swizzle ( temp highp 3-component vector of int)
0:25          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:25            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25              Constant:
0:25                1 (const int)
0:25            Constant:
0:25              1 (const int)
0:25          Sequence
0:25            Constant:
0:25              0 (const int)
0:25            Constant:
0:25              1 (const int)
0:25            Constant:
0:25              2 (const int)
0:25        subgroupAdd ( global highp 3-component vector of int)
0:25          vector swizzle ( temp highp 3-component vector of int)
0:25            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:25              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:25                Constant:
0:25                  2 (const int)
0:25              Constant:
0:25                1 (const int)
0:25            Sequence
0:25              Constant:
0:25                0 (const int)
0:25              Constant:
0:25                1 (const int)
0:25              Constant:
0:25                2 (const int)
0:26      move second child to first child ( temp highp 4-component vector of int)
0:26        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:26          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26            Constant:
0:26              1 (const int)
0:26          Constant:
0:26            1 (const int)
0:26        subgroupAdd ( global highp 4-component vector of int)
0:26          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:26            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:26              Constant:
0:26                3 (const int)
0:26            Constant:
0:26              1 (const int)
0:28      move second child to first child ( temp highp uint)
0:28        direct index ( temp highp uint)
0:28          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:28            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28              Constant:
0:28                2 (const int)
0:28            Constant:
0:28              2 (const int)
0:28          Constant:
0:28            0 (const int)
0:28        subgroupAdd ( global highp uint)
0:28          direct index ( temp highp uint)
0:28            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:28              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:28                Constant:
0:28                  0 (const int)
0:28              Constant:
0:28                2 (const int)
0:28            Constant:
0:28              0 (const int)
0:29      move second child to first child ( temp highp 2-component vector of uint)
0:29        vector swizzle ( temp highp 2-component vector of uint)
0:29          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:29            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29              Constant:
0:29                2 (const int)
0:29            Constant:
0:29              2 (const int)
0:29          Sequence
0:29            Constant:
0:29              0 (const int)
0:29            Constant:
0:29              1 (const int)
0:29        subgroupAdd ( global highp 2-component vector of uint)
0:29          vector swizzle ( temp highp 2-component vector of uint)
0:29            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:29              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:29                Constant:
0:29                  1 (const int)
0:29              Constant:
0:29                2 (const int)
0:29            Sequence
0:29              Constant:
0:29                0 (const int)
0:29              Constant:
0:29                1 (const int)
0:30      move second child to first child ( temp highp 3-component vector of uint)
0:30        vector swizzle ( temp highp 3-component vector of uint)
0:30          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:30            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30              Constant:
0:30                2 (const int)
0:30            Constant:
0:30              2 (const int)
0:30          Sequence
0:30            Constant:
0:30              0 (const int)
0:30            Constant:
0:30              1 (const int)
0:30            Constant:
0:30              2 (const int)
0:30        subgroupAdd ( global highp 3-component vector of uint)
0:30          vector swizzle ( temp highp 3-component vector of uint)
0:30            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:30              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:30                Constant:
0:30                  2 (const int)
0:30              Constant:
0:30                2 (const int)
0:30            Sequence
0:30              Constant:
0:30                0 (const int)
0:30              Constant:
0:30                1 (const int)
0:30              Constant:
0:30                2 (const int)
0:31      move second child to first child ( temp highp 4-component vector of uint)
0:31        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:31          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31            Constant:
0:31              2 (const int)
0:31          Constant:
0:31            2 (const int)
0:31        subgroupAdd ( global highp 4-component vector of uint)
0:31          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:31            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:31              Constant:
0:31                3 (const int)
0:31            Constant:
0:31              2 (const int)
0:33      move second child to first child ( temp highp float)
0:33        direct index ( temp highp float)
0:33          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:33            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33              Constant:
0:33                3 (const int)
0:33            Constant:
0:33              0 (const int)
0:33          Constant:
0:33            0 (const int)
0:33        subgroupMul ( global highp float)
0:33          direct index ( temp highp float)
0:33            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:33              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:33                Constant:
0:33                  0 (const int)
0:33              Constant:
0:33                0 (const int)
0:33            Constant:
0:33              0 (const int)
0:34      move second child to first child ( temp highp 2-component vector of float)
0:34        vector swizzle ( temp highp 2-component vector of float)
0:34          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:34            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34              Constant:
0:34                3 (const int)
0:34            Constant:
0:34              0 (const int)
0:34          Sequence
0:34            Constant:
0:34              0 (const int)
0:34            Constant:
0:34              1 (const int)
0:34        subgroupMul ( global highp 2-component vector of float)
0:34          vector swizzle ( temp highp 2-component vector of float)
0:34            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:34              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:34                Constant:
0:34                  1 (const int)
0:34              Constant:
0:34                0 (const int)
0:34            Sequence
0:34              Constant:
0:34                0 (const int)
0:34              Constant:
0:34                1 (const int)
0:35      move second child to first child ( temp highp 3-component vector of float)
0:35        vector swizzle ( temp highp 3-component vector of float)
0:35          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:35            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35              Constant:
0:35                3 (const int)
0:35            Constant:
0:35              0 (const int)
0:35          Sequence
0:35            Constant:
0:35              0 (const int)
0:35            Constant:
0:35              1 (const int)
0:35            Constant:
0:35              2 (const int)
0:35        subgroupMul ( global highp 3-component vector of float)
0:35          vector swizzle ( temp highp 3-component vector of float)
0:35            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:35              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:35                Constant:
0:35                  2 (const int)
0:35              Constant:
0:35                0 (const int)
0:35            Sequence
0:35              Constant:
0:35                0 (const int)
0:35              Constant:
0:35                1 (const int)
0:35              Constant:
0:35                2 (const int)
0:36      move second child to first child ( temp highp 4-component vector of float)
0:36        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:36          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36            Constant:
0:36              3 (const int)
0:36          Constant:
0:36            0 (const int)
0:36        subgroupMul ( global highp 4-component vector of float)
0:36          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:36            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:36              Constant:
0:36                3 (const int)
0:36            Constant:
0:36              0 (const int)
0:38      move second child to first child ( temp highp int)
0:38        direct index ( temp highp int)
0:38          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:38            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38              Constant:
0:38                0 (const int)
0:38            Constant:
0:38              1 (const int)
0:38          Constant:
0:38            0 (const int)
0:38        subgroupMul ( global highp int)
0:38          direct index ( temp highp int)
0:38            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:38              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:38                Constant:
0:38                  0 (const int)
0:38              Constant:
0:38                1 (const int)
0:38            Constant:
0:38              0 (const int)
0:39      move second child to first child ( temp highp 2-component vector of int)
0:39        vector swizzle ( temp highp 2-component vector of int)
0:39          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:39            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39              Constant:
0:39                0 (const int)
0:39            Constant:
0:39              1 (const int)
0:39          Sequence
0:39            Constant:
0:39              0 (const int)
0:39            Constant:
0:39              1 (const int)
0:39        subgroupMul ( global highp 2-component vector of int)
0:39          vector swizzle ( temp highp 2-component vector of int)
0:39            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:39              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:39                Constant:
0:39                  1 (const int)
0:39              Constant:
0:39                1 (const int)
0:39            Sequence
0:39              Constant:
0:39                0 (const int)
0:39              Constant:
0:39                1 (const int)
0:40      move second child to first child ( temp highp 3-component vector of int)
0:40        vector swizzle ( temp highp 3-component vector of int)
0:40          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:40            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40              Constant:
0:40                0 (const int)
0:40            Constant:
0:40              1 (const int)
0:40          Sequence
0:40            Constant:
0:40              0 (const int)
0:40            Constant:
0:40              1 (const int)
0:40            Constant:
0:40              2 (const int)
0:40        subgroupMul ( global highp 3-component vector of int)
0:40          vector swizzle ( temp highp 3-component vector of int)
0:40            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:40              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:40                Constant:
0:40                  2 (const int)
0:40              Constant:
0:40                1 (const int)
0:40            Sequence
0:40              Constant:
0:40                0 (const int)
0:40              Constant:
0:40                1 (const int)
0:40              Constant:
0:40                2 (const int)
0:41      move second child to first child ( temp highp 4-component vector of int)
0:41        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:41          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41            Constant:
0:41              0 (const int)
0:41          Constant:
0:41            1 (const int)
0:41        subgroupMul ( global highp 4-component vector of int)
0:41          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:41            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:41              Constant:
0:41                3 (const int)
0:41            Constant:
0:41              1 (const int)
0:43      move second child to first child ( temp highp uint)
0:43        direct index ( temp highp uint)
0:43          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:43            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43              Constant:
0:43                1 (const int)
0:43            Constant:
0:43              2 (const int)
0:43          Constant:
0:43            0 (const int)
0:43        subgroupMul ( global highp uint)
0:43          direct index ( temp highp uint)
0:43            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:43              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:43                Constant:
0:43                  0 (const int)
0:43              Constant:
0:43                2 (const int)
0:43            Constant:
0:43              0 (const int)
0:44      move second child to first child ( temp highp 2-component vector of uint)
0:44        vector swizzle ( temp highp 2-component vector of uint)
0:44          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:44            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44              Constant:
0:44                1 (const int)
0:44            Constant:
0:44              2 (const int)
0:44          Sequence
0:44            Constant:
0:44              0 (const int)
0:44            Constant:
0:44              1 (const int)
0:44        subgroupMul ( global highp 2-component vector of uint)
0:44          vector swizzle ( temp highp 2-component vector of uint)
0:44            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:44              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:44                Constant:
0:44                  1 (const int)
0:44              Constant:
0:44                2 (const int)
0:44            Sequence
0:44              Constant:
0:44                0 (const int)
0:44              Constant:
0:44                1 (const int)
0:45      move second child to first child ( temp highp 3-component vector of uint)
0:45        vector swizzle ( temp highp 3-component vector of uint)
0:45          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:45            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45              Constant:
0:45                1 (const int)
0:45            Constant:
0:45              2 (const int)
0:45          Sequence
0:45            Constant:
0:45              0 (const int)
0:45            Constant:
0:45              1 (const int)
0:45            Constant:
0:45              2 (const int)
0:45        subgroupMul ( global highp 3-component vector of uint)
0:45          vector swizzle ( temp highp 3-component vector of uint)
0:45            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:45              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:45                Constant:
0:45                  2 (const int)
0:45              Constant:
0:45                2 (const int)
0:45            Sequence
0:45              Constant:
0:45                0 (const int)
0:45              Constant:
0:45                1 (const int)
0:45              Constant:
0:45                2 (const int)
0:46      move second child to first child ( temp highp 4-component vector of uint)
0:46        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:46          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46            Constant:
0:46              1 (const int)
0:46          Constant:
0:46            2 (const int)
0:46        subgroupMul ( global highp 4-component vector of uint)
0:46          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:46            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:46              Constant:
0:46                3 (const int)
0:46            Constant:
0:46              2 (const int)
0:48      move second child to first child ( temp highp float)
0:48        direct index ( temp highp float)
0:48          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:48            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48              Constant:
0:48                2 (const int)
0:48            Constant:
0:48              0 (const int)
0:48          Constant:
0:48            0 (const int)
0:48        subgroupMin ( global highp float)
0:48          direct index ( temp highp float)
0:48            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:48              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:48                Constant:
0:48                  0 (const int)
0:48              Constant:
0:48                0 (const int)
0:48            Constant:
0:48              0 (const int)
0:49      move second child to first child ( temp highp 2-component vector of float)
0:49        vector swizzle ( temp highp 2-component vector of float)
0:49          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:49            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49              Constant:
0:49                2 (const int)
0:49            Constant:
0:49              0 (const int)
0:49          Sequence
0:49            Constant:
0:49              0 (const int)
0:49            Constant:
0:49              1 (const int)
0:49        subgroupMin ( global highp 2-component vector of float)
0:49          vector swizzle ( temp highp 2-component vector of float)
0:49            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:49              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:49                Constant:
0:49                  1 (const int)
0:49              Constant:
0:49                0 (const int)
0:49            Sequence
0:49              Constant:
0:49                0 (const int)
0:49              Constant:
0:49                1 (const int)
0:50      move second child to first child ( temp highp 3-component vector of float)
0:50        vector swizzle ( temp highp 3-component vector of float)
0:50          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:50            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50              Constant:
0:50                2 (const int)
0:50            Constant:
0:50              0 (const int)
0:50          Sequence
0:50            Constant:
0:50              0 (const int)
0:50            Constant:
0:50              1 (const int)
0:50            Constant:
0:50              2 (const int)
0:50        subgroupMin ( global highp 3-component vector of float)
0:50          vector swizzle ( temp highp 3-component vector of float)
0:50            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:50              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:50                Constant:
0:50                  2 (const int)
0:50              Constant:
0:50                0 (const int)
0:50            Sequence
0:50              Constant:
0:50                0 (const int)
0:50              Constant:
0:50                1 (const int)
0:50              Constant:
0:50                2 (const int)
0:51      move second child to first child ( temp highp 4-component vector of float)
0:51        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:51          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51            Constant:
0:51              2 (const int)
0:51          Constant:
0:51            0 (const int)
0:51        subgroupMin ( global highp 4-component vector of float)
0:51          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:51            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:51              Constant:
0:51                3 (const int)
0:51            Constant:
0:51              0 (const int)
0:53      move second child to first child ( temp highp int)
0:53        direct index ( temp highp int)
0:53          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:53            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53              Constant:
0:53                3 (const int)
0:53            Constant:
0:53              1 (const int)
0:53          Constant:
0:53            0 (const int)
0:53        subgroupMin ( global highp int)
0:53          direct index ( temp highp int)
0:53            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:53              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:53                Constant:
0:53                  0 (const int)
0:53              Constant:
0:53                1 (const int)
0:53            Constant:
0:53              0 (const int)
0:54      move second child to first child ( temp highp 2-component vector of int)
0:54        vector swizzle ( temp highp 2-component vector of int)
0:54          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:54            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54              Constant:
0:54                3 (const int)
0:54            Constant:
0:54              1 (const int)
0:54          Sequence
0:54            Constant:
0:54              0 (const int)
0:54            Constant:
0:54              1 (const int)
0:54        subgroupMin ( global highp 2-component vector of int)
0:54          vector swizzle ( temp highp 2-component vector of int)
0:54            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:54              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:54                Constant:
0:54                  1 (const int)
0:54              Constant:
0:54                1 (const int)
0:54            Sequence
0:54              Constant:
0:54                0 (const int)
0:54              Constant:
0:54                1 (const int)
0:55      move second child to first child ( temp highp 3-component vector of int)
0:55        vector swizzle ( temp highp 3-component vector of int)
0:55          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:55            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55              Constant:
0:55                3 (const int)
0:55            Constant:
0:55              1 (const int)
0:55          Sequence
0:55            Constant:
0:55              0 (const int)
0:55            Constant:
0:55              1 (const int)
0:55            Constant:
0:55              2 (const int)
0:55        subgroupMin ( global highp 3-component vector of int)
0:55          vector swizzle ( temp highp 3-component vector of int)
0:55            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:55              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:55                Constant:
0:55                  2 (const int)
0:55              Constant:
0:55                1 (const int)
0:55            Sequence
0:55              Constant:
0:55                0 (const int)
0:55              Constant:
0:55                1 (const int)
0:55              Constant:
0:55                2 (const int)
0:56      move second child to first child ( temp highp 4-component vector of int)
0:56        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:56          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56            Constant:
0:56              3 (const int)
0:56          Constant:
0:56            1 (const int)
0:56        subgroupMin ( global highp 4-component vector of int)
0:56          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:56            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:56              Constant:
0:56                3 (const int)
0:56            Constant:
0:56              1 (const int)
0:58      move second child to first child ( temp highp uint)
0:58        direct index ( temp highp uint)
0:58          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:58            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58              Constant:
0:58                0 (const int)
0:58            Constant:
0:58              2 (const int)
0:58          Constant:
0:58            0 (const int)
0:58        subgroupMin ( global highp uint)
0:58          direct index ( temp highp uint)
0:58            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:58              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:58                Constant:
0:58                  0 (const int)
0:58              Constant:
0:58                2 (const int)
0:58            Constant:
0:58              0 (const int)
0:59      move second child to first child ( temp highp 2-component vector of uint)
0:59        vector swizzle ( temp highp 2-component vector of uint)
0:59          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:59            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59              Constant:
0:59                0 (const int)
0:59            Constant:
0:59              2 (const int)
0:59          Sequence
0:59            Constant:
0:59              0 (const int)
0:59            Constant:
0:59              1 (const int)
0:59        subgroupMin ( global highp 2-component vector of uint)
0:59          vector swizzle ( temp highp 2-component vector of uint)
0:59            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:59              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:59                Constant:
0:59                  1 (const int)
0:59              Constant:
0:59                2 (const int)
0:59            Sequence
0:59              Constant:
0:59                0 (const int)
0:59              Constant:
0:59                1 (const int)
0:60      move second child to first child ( temp highp 3-component vector of uint)
0:60        vector swizzle ( temp highp 3-component vector of uint)
0:60          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:60            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60              Constant:
0:60                0 (const int)
0:60            Constant:
0:60              2 (const int)
0:60          Sequence
0:60            Constant:
0:60              0 (const int)
0:60            Constant:
0:60              1 (const int)
0:60            Constant:
0:60              2 (const int)
0:60        subgroupMin ( global highp 3-component vector of uint)
0:60          vector swizzle ( temp highp 3-component vector of uint)
0:60            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:60              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:60                Constant:
0:60                  2 (const int)
0:60              Constant:
0:60                2 (const int)
0:60            Sequence
0:60              Constant:
0:60                0 (const int)
0:60              Constant:
0:60                1 (const int)
0:60              Constant:
0:60                2 (const int)
0:61      move second child to first child ( temp highp 4-component vector of uint)
0:61        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:61          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61            Constant:
0:61              0 (const int)
0:61          Constant:
0:61            2 (const int)
0:61        subgroupMin ( global highp 4-component vector of uint)
0:61          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:61            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:61              Constant:
0:61                3 (const int)
0:61            Constant:
0:61              2 (const int)
0:63      move second child to first child ( temp highp float)
0:63        direct index ( temp highp float)
0:63          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:63            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63              Constant:
0:63                1 (const int)
0:63            Constant:
0:63              0 (const int)
0:63          Constant:
0:63            0 (const int)
0:63        subgroupMax ( global highp float)
0:63          direct index ( temp highp float)
0:63            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:63              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:63                Constant:
0:63                  0 (const int)
0:63              Constant:
0:63                0 (const int)
0:63            Constant:
0:63              0 (const int)
0:64      move second child to first child ( temp highp 2-component vector of float)
0:64        vector swizzle ( temp highp 2-component vector of float)
0:64          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:64            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64              Constant:
0:64                1 (const int)
0:64            Constant:
0:64              0 (const int)
0:64          Sequence
0:64            Constant:
0:64              0 (const int)
0:64            Constant:
0:64              1 (const int)
0:64        subgroupMax ( global highp 2-component vector of float)
0:64          vector swizzle ( temp highp 2-component vector of float)
0:64            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:64              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:64                Constant:
0:64                  1 (const int)
0:64              Constant:
0:64                0 (const int)
0:64            Sequence
0:64              Constant:
0:64                0 (const int)
0:64              Constant:
0:64                1 (const int)
0:65      move second child to first child ( temp highp 3-component vector of float)
0:65        vector swizzle ( temp highp 3-component vector of float)
0:65          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:65            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65              Constant:
0:65                1 (const int)
0:65            Constant:
0:65              0 (const int)
0:65          Sequence
0:65            Constant:
0:65              0 (const int)
0:65            Constant:
0:65              1 (const int)
0:65            Constant:
0:65              2 (const int)
0:65        subgroupMax ( global highp 3-component vector of float)
0:65          vector swizzle ( temp highp 3-component vector of float)
0:65            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:65              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:65                Constant:
0:65                  2 (const int)
0:65              Constant:
0:65                0 (const int)
0:65            Sequence
0:65              Constant:
0:65                0 (const int)
0:65              Constant:
0:65                1 (const int)
0:65              Constant:
0:65                2 (const int)
0:66      move second child to first child ( temp highp 4-component vector of float)
0:66        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:66          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66            Constant:
0:66              1 (const int)
0:66          Constant:
0:66            0 (const int)
0:66        subgroupMax ( global highp 4-component vector of float)
0:66          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:66            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:66              Constant:
0:66                3 (const int)
0:66            Constant:
0:66              0 (const int)
0:68      move second child to first child ( temp highp int)
0:68        direct index ( temp highp int)
0:68          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:68            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68              Constant:
0:68                2 (const int)
0:68            Constant:
0:68              1 (const int)
0:68          Constant:
0:68            0 (const int)
0:68        subgroupMax ( global highp int)
0:68          direct index ( temp highp int)
0:68            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:68              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:68                Constant:
0:68                  0 (const int)
0:68              Constant:
0:68                1 (const int)
0:68            Constant:
0:68              0 (const int)
0:69      move second child to first child ( temp highp 2-component vector of int)
0:69        vector swizzle ( temp highp 2-component vector of int)
0:69          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:69            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69              Constant:
0:69                2 (const int)
0:69            Constant:
0:69              1 (const int)
0:69          Sequence
0:69            Constant:
0:69              0 (const int)
0:69            Constant:
0:69              1 (const int)
0:69        subgroupMax ( global highp 2-component vector of int)
0:69          vector swizzle ( temp highp 2-component vector of int)
0:69            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:69              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:69                Constant:
0:69                  1 (const int)
0:69              Constant:
0:69                1 (const int)
0:69            Sequence
0:69              Constant:
0:69                0 (const int)
0:69              Constant:
0:69                1 (const int)
0:70      move second child to first child ( temp highp 3-component vector of int)
0:70        vector swizzle ( temp highp 3-component vector of int)
0:70          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:70            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70              Constant:
0:70                2 (const int)
0:70            Constant:
0:70              1 (const int)
0:70          Sequence
0:70            Constant:
0:70              0 (const int)
0:70            Constant:
0:70              1 (const int)
0:70            Constant:
0:70              2 (const int)
0:70        subgroupMax ( global highp 3-component vector of int)
0:70          vector swizzle ( temp highp 3-component vector of int)
0:70            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:70              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:70                Constant:
0:70                  2 (const int)
0:70              Constant:
0:70                1 (const int)
0:70            Sequence
0:70              Constant:
0:70                0 (const int)
0:70              Constant:
0:70                1 (const int)
0:70              Constant:
0:70                2 (const int)
0:71      move second child to first child ( temp highp 4-component vector of int)
0:71        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:71          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71            Constant:
0:71              2 (const int)
0:71          Constant:
0:71            1 (const int)
0:71        subgroupMax ( global highp 4-component vector of int)
0:71          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:71            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:71              Constant:
0:71                3 (const int)
0:71            Constant:
0:71              1 (const int)
0:73      move second child to first child ( temp highp uint)
0:73        direct index ( temp highp uint)
0:73          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:73            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73              Constant:
0:73                3 (const int)
0:73            Constant:
0:73              2 (const int)
0:73          Constant:
0:73            0 (const int)
0:73        subgroupMax ( global highp uint)
0:73          direct index ( temp highp uint)
0:73            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:73              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:73                Constant:
0:73                  0 (const int)
0:73              Constant:
0:73                2 (const int)
0:73            Constant:
0:73              0 (const int)
0:74      move second child to first child ( temp highp 2-component vector of uint)
0:74        vector swizzle ( temp highp 2-component vector of uint)
0:74          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:74            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74              Constant:
0:74                3 (const int)
0:74            Constant:
0:74              2 (const int)
0:74          Sequence
0:74            Constant:
0:74              0 (const int)
0:74            Constant:
0:74              1 (const int)
0:74        subgroupMax ( global highp 2-component vector of uint)
0:74          vector swizzle ( temp highp 2-component vector of uint)
0:74            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:74              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:74                Constant:
0:74                  1 (const int)
0:74              Constant:
0:74                2 (const int)
0:74            Sequence
0:74              Constant:
0:74                0 (const int)
0:74              Constant:
0:74                1 (const int)
0:75      move second child to first child ( temp highp 3-component vector of uint)
0:75        vector swizzle ( temp highp 3-component vector of uint)
0:75          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:75            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75              Constant:
0:75                3 (const int)
0:75            Constant:
0:75              2 (const int)
0:75          Sequence
0:75            Constant:
0:75              0 (const int)
0:75            Constant:
0:75              1 (const int)
0:75            Constant:
0:75              2 (const int)
0:75        subgroupMax ( global highp 3-component vector of uint)
0:75          vector swizzle ( temp highp 3-component vector of uint)
0:75            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:75              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:75                Constant:
0:75                  2 (const int)
0:75              Constant:
0:75                2 (const int)
0:75            Sequence
0:75              Constant:
0:75                0 (const int)
0:75              Constant:
0:75                1 (const int)
0:75              Constant:
0:75                2 (const int)
0:76      move second child to first child ( temp highp 4-component vector of uint)
0:76        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:76          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76            Constant:
0:76              3 (const int)
0:76          Constant:
0:76            2 (const int)
0:76        subgroupMax ( global highp 4-component vector of uint)
0:76          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:76            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:76              Constant:
0:76                3 (const int)
0:76            Constant:
0:76              2 (const int)
0:78      move second child to first child ( temp highp int)
0:78        direct index ( temp highp int)
0:78          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:78            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78              Constant:
0:78                0 (const int)
0:78            Constant:
0:78              1 (const int)
0:78          Constant:
0:78            0 (const int)
0:78        subgroupAnd ( global highp int)
0:78          direct index ( temp highp int)
0:78            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:78              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:78                Constant:
0:78                  0 (const int)
0:78              Constant:
0:78                1 (const int)
0:78            Constant:
0:78              0 (const int)
0:79      move second child to first child ( temp highp 2-component vector of int)
0:79        vector swizzle ( temp highp 2-component vector of int)
0:79          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:79            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79              Constant:
0:79                0 (const int)
0:79            Constant:
0:79              1 (const int)
0:79          Sequence
0:79            Constant:
0:79              0 (const int)
0:79            Constant:
0:79              1 (const int)
0:79        subgroupAnd ( global highp 2-component vector of int)
0:79          vector swizzle ( temp highp 2-component vector of int)
0:79            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:79              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:79                Constant:
0:79                  1 (const int)
0:79              Constant:
0:79                1 (const int)
0:79            Sequence
0:79              Constant:
0:79                0 (const int)
0:79              Constant:
0:79                1 (const int)
0:80      move second child to first child ( temp highp 3-component vector of int)
0:80        vector swizzle ( temp highp 3-component vector of int)
0:80          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:80            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80              Constant:
0:80                0 (const int)
0:80            Constant:
0:80              1 (const int)
0:80          Sequence
0:80            Constant:
0:80              0 (const int)
0:80            Constant:
0:80              1 (const int)
0:80            Constant:
0:80              2 (const int)
0:80        subgroupAnd ( global highp 3-component vector of int)
0:80          vector swizzle ( temp highp 3-component vector of int)
0:80            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:80              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:80                Constant:
0:80                  2 (const int)
0:80              Constant:
0:80                1 (const int)
0:80            Sequence
0:80              Constant:
0:80                0 (const int)
0:80              Constant:
0:80                1 (const int)
0:80              Constant:
0:80                2 (const int)
0:81      move second child to first child ( temp highp 4-component vector of int)
0:81        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:81          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81            Constant:
0:81              0 (const int)
0:81          Constant:
0:81            1 (const int)
0:81        subgroupAnd ( global highp 4-component vector of int)
0:81          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:81            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:81              Constant:
0:81                3 (const int)
0:81            Constant:
0:81              1 (const int)
0:83      move second child to first child ( temp highp uint)
0:83        direct index ( temp highp uint)
0:83          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:83            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83              Constant:
0:83                1 (const int)
0:83            Constant:
0:83              2 (const int)
0:83          Constant:
0:83            0 (const int)
0:83        subgroupAnd ( global highp uint)
0:83          direct index ( temp highp uint)
0:83            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:83              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:83                Constant:
0:83                  0 (const int)
0:83              Constant:
0:83                2 (const int)
0:83            Constant:
0:83              0 (const int)
0:84      move second child to first child ( temp highp 2-component vector of uint)
0:84        vector swizzle ( temp highp 2-component vector of uint)
0:84          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:84            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84              Constant:
0:84                1 (const int)
0:84            Constant:
0:84              2 (const int)
0:84          Sequence
0:84            Constant:
0:84              0 (const int)
0:84            Constant:
0:84              1 (const int)
0:84        subgroupAnd ( global highp 2-component vector of uint)
0:84          vector swizzle ( temp highp 2-component vector of uint)
0:84            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:84              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:84                Constant:
0:84                  1 (const int)
0:84              Constant:
0:84                2 (const int)
0:84            Sequence
0:84              Constant:
0:84                0 (const int)
0:84              Constant:
0:84                1 (const int)
0:85      move second child to first child ( temp highp 3-component vector of uint)
0:85        vector swizzle ( temp highp 3-component vector of uint)
0:85          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:85            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85              Constant:
0:85                1 (const int)
0:85            Constant:
0:85              2 (const int)
0:85          Sequence
0:85            Constant:
0:85              0 (const int)
0:85            Constant:
0:85              1 (const int)
0:85            Constant:
0:85              2 (const int)
0:85        subgroupAnd ( global highp 3-component vector of uint)
0:85          vector swizzle ( temp highp 3-component vector of uint)
0:85            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:85              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:85                Constant:
0:85                  2 (const int)
0:85              Constant:
0:85                2 (const int)
0:85            Sequence
0:85              Constant:
0:85                0 (const int)
0:85              Constant:
0:85                1 (const int)
0:85              Constant:
0:85                2 (const int)
0:86      move second child to first child ( temp highp 4-component vector of uint)
0:86        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:86          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86            Constant:
0:86              1 (const int)
0:86          Constant:
0:86            2 (const int)
0:86        subgroupAnd ( global highp 4-component vector of uint)
0:86          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:86            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:86              Constant:
0:86                3 (const int)
0:86            Constant:
0:86              2 (const int)
0:88      move second child to first child ( temp highp int)
0:88        direct index ( temp highp int)
0:88          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:88            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88              Constant:
0:88                2 (const int)
0:88            Constant:
0:88              1 (const int)
0:88          Constant:
0:88            0 (const int)
0:88        Convert bool to int ( temp highp int)
0:88          subgroupAnd ( global bool)
0:88            Compare Less Than ( temp bool)
0:88              direct index ( temp highp int)
0:88                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:88                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:88                    Constant:
0:88                      0 (const int)
0:88                  Constant:
0:88                    1 (const int)
0:88                Constant:
0:88                  0 (const int)
0:88              Constant:
0:88                0 (const int)
0:89      move second child to first child ( temp highp 2-component vector of int)
0:89        vector swizzle ( temp highp 2-component vector of int)
0:89          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:89            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89              Constant:
0:89                2 (const int)
0:89            Constant:
0:89              1 (const int)
0:89          Sequence
0:89            Constant:
0:89              0 (const int)
0:89            Constant:
0:89              1 (const int)
0:89        Convert bool to int ( temp highp 2-component vector of int)
0:89          subgroupAnd ( global 2-component vector of bool)
0:89            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:89              vector swizzle ( temp highp 2-component vector of int)
0:89                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:89                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:89                    Constant:
0:89                      1 (const int)
0:89                  Constant:
0:89                    1 (const int)
0:89                Sequence
0:89                  Constant:
0:89                    0 (const int)
0:89                  Constant:
0:89                    1 (const int)
0:89              Constant:
0:89                0 (const int)
0:89                0 (const int)
0:90      move second child to first child ( temp highp 3-component vector of int)
0:90        vector swizzle ( temp highp 3-component vector of int)
0:90          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:90            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90              Constant:
0:90                2 (const int)
0:90            Constant:
0:90              1 (const int)
0:90          Sequence
0:90            Constant:
0:90              0 (const int)
0:90            Constant:
0:90              1 (const int)
0:90            Constant:
0:90              2 (const int)
0:90        Convert bool to int ( temp highp 3-component vector of int)
0:90          subgroupAnd ( global 3-component vector of bool)
0:90            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:90              vector swizzle ( temp highp 3-component vector of int)
0:90                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:90                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:90                    Constant:
0:90                      1 (const int)
0:90                  Constant:
0:90                    1 (const int)
0:90                Sequence
0:90                  Constant:
0:90                    0 (const int)
0:90                  Constant:
0:90                    1 (const int)
0:90                  Constant:
0:90                    2 (const int)
0:90              Constant:
0:90                0 (const int)
0:90                0 (const int)
0:90                0 (const int)
0:91      move second child to first child ( temp highp 4-component vector of int)
0:91        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:91          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91            Constant:
0:91              2 (const int)
0:91          Constant:
0:91            1 (const int)
0:91        Convert bool to int ( temp highp 4-component vector of int)
0:91          subgroupAnd ( global 4-component vector of bool)
0:91            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:91              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:91                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:91                  Constant:
0:91                    1 (const int)
0:91                Constant:
0:91                  1 (const int)
0:91              Constant:
0:91                0 (const int)
0:91                0 (const int)
0:91                0 (const int)
0:91                0 (const int)
0:93      move second child to first child ( temp highp int)
0:93        direct index ( temp highp int)
0:93          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:93            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93              Constant:
0:93                3 (const int)
0:93            Constant:
0:93              1 (const int)
0:93          Constant:
0:93            0 (const int)
0:93        subgroupOr ( global highp int)
0:93          direct index ( temp highp int)
0:93            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:93              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:93                Constant:
0:93                  0 (const int)
0:93              Constant:
0:93                1 (const int)
0:93            Constant:
0:93              0 (const int)
0:94      move second child to first child ( temp highp 2-component vector of int)
0:94        vector swizzle ( temp highp 2-component vector of int)
0:94          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:94            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94              Constant:
0:94                3 (const int)
0:94            Constant:
0:94              1 (const int)
0:94          Sequence
0:94            Constant:
0:94              0 (const int)
0:94            Constant:
0:94              1 (const int)
0:94        subgroupOr ( global highp 2-component vector of int)
0:94          vector swizzle ( temp highp 2-component vector of int)
0:94            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:94              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:94                Constant:
0:94                  1 (const int)
0:94              Constant:
0:94                1 (const int)
0:94            Sequence
0:94              Constant:
0:94                0 (const int)
0:94              Constant:
0:94                1 (const int)
0:95      move second child to first child ( temp highp 3-component vector of int)
0:95        vector swizzle ( temp highp 3-component vector of int)
0:95          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:95            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95              Constant:
0:95                3 (const int)
0:95            Constant:
0:95              1 (const int)
0:95          Sequence
0:95            Constant:
0:95              0 (const int)
0:95            Constant:
0:95              1 (const int)
0:95            Constant:
0:95              2 (const int)
0:95        subgroupOr ( global highp 3-component vector of int)
0:95          vector swizzle ( temp highp 3-component vector of int)
0:95            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:95              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:95                Constant:
0:95                  2 (const int)
0:95              Constant:
0:95                1 (const int)
0:95            Sequence
0:95              Constant:
0:95                0 (const int)
0:95              Constant:
0:95                1 (const int)
0:95              Constant:
0:95                2 (const int)
0:96      move second child to first child ( temp highp 4-component vector of int)
0:96        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:96          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96            Constant:
0:96              3 (const int)
0:96          Constant:
0:96            1 (const int)
0:96        subgroupOr ( global highp 4-component vector of int)
0:96          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:96            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:96              Constant:
0:96                3 (const int)
0:96            Constant:
0:96              1 (const int)
0:98      move second child to first child ( temp highp uint)
0:98        direct index ( temp highp uint)
0:98          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:98            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98              Constant:
0:98                0 (const int)
0:98            Constant:
0:98              2 (const int)
0:98          Constant:
0:98            0 (const int)
0:98        subgroupOr ( global highp uint)
0:98          direct index ( temp highp uint)
0:98            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:98              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:98                Constant:
0:98                  0 (const int)
0:98              Constant:
0:98                2 (const int)
0:98            Constant:
0:98              0 (const int)
0:99      move second child to first child ( temp highp 2-component vector of uint)
0:99        vector swizzle ( temp highp 2-component vector of uint)
0:99          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:99            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99              Constant:
0:99                0 (const int)
0:99            Constant:
0:99              2 (const int)
0:99          Sequence
0:99            Constant:
0:99              0 (const int)
0:99            Constant:
0:99              1 (const int)
0:99        subgroupOr ( global highp 2-component vector of uint)
0:99          vector swizzle ( temp highp 2-component vector of uint)
0:99            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:99              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:99                Constant:
0:99                  1 (const int)
0:99              Constant:
0:99                2 (const int)
0:99            Sequence
0:99              Constant:
0:99                0 (const int)
0:99              Constant:
0:99                1 (const int)
0:100      move second child to first child ( temp highp 3-component vector of uint)
0:100        vector swizzle ( temp highp 3-component vector of uint)
0:100          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:100            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100              Constant:
0:100                0 (const int)
0:100            Constant:
0:100              2 (const int)
0:100          Sequence
0:100            Constant:
0:100              0 (const int)
0:100            Constant:
0:100              1 (const int)
0:100            Constant:
0:100              2 (const int)
0:100        subgroupOr ( global highp 3-component vector of uint)
0:100          vector swizzle ( temp highp 3-component vector of uint)
0:100            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:100              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:100                Constant:
0:100                  2 (const int)
0:100              Constant:
0:100                2 (const int)
0:100            Sequence
0:100              Constant:
0:100                0 (const int)
0:100              Constant:
0:100                1 (const int)
0:100              Constant:
0:100                2 (const int)
0:101      move second child to first child ( temp highp 4-component vector of uint)
0:101        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:101          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101            Constant:
0:101              0 (const int)
0:101          Constant:
0:101            2 (const int)
0:101        subgroupOr ( global highp 4-component vector of uint)
0:101          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:101            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:101              Constant:
0:101                3 (const int)
0:101            Constant:
0:101              2 (const int)
0:103      move second child to first child ( temp highp int)
0:103        direct index ( temp highp int)
0:103          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:103            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103              Constant:
0:103                1 (const int)
0:103            Constant:
0:103              1 (const int)
0:103          Constant:
0:103            0 (const int)
0:103        Convert bool to int ( temp highp int)
0:103          subgroupOr ( global bool)
0:103            Compare Less Than ( temp bool)
0:103              direct index ( temp highp int)
0:103                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:103                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:103                    Constant:
0:103                      0 (const int)
0:103                  Constant:
0:103                    1 (const int)
0:103                Constant:
0:103                  0 (const int)
0:103              Constant:
0:103                0 (const int)
0:104      move second child to first child ( temp highp 2-component vector of int)
0:104        vector swizzle ( temp highp 2-component vector of int)
0:104          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:104            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104              Constant:
0:104                1 (const int)
0:104            Constant:
0:104              1 (const int)
0:104          Sequence
0:104            Constant:
0:104              0 (const int)
0:104            Constant:
0:104              1 (const int)
0:104        Convert bool to int ( temp highp 2-component vector of int)
0:104          subgroupOr ( global 2-component vector of bool)
0:104            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:104              vector swizzle ( temp highp 2-component vector of int)
0:104                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:104                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:104                    Constant:
0:104                      1 (const int)
0:104                  Constant:
0:104                    1 (const int)
0:104                Sequence
0:104                  Constant:
0:104                    0 (const int)
0:104                  Constant:
0:104                    1 (const int)
0:104              Constant:
0:104                0 (const int)
0:104                0 (const int)
0:105      move second child to first child ( temp highp 3-component vector of int)
0:105        vector swizzle ( temp highp 3-component vector of int)
0:105          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:105            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105              Constant:
0:105                1 (const int)
0:105            Constant:
0:105              1 (const int)
0:105          Sequence
0:105            Constant:
0:105              0 (const int)
0:105            Constant:
0:105              1 (const int)
0:105            Constant:
0:105              2 (const int)
0:105        Convert bool to int ( temp highp 3-component vector of int)
0:105          subgroupOr ( global 3-component vector of bool)
0:105            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:105              vector swizzle ( temp highp 3-component vector of int)
0:105                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:105                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:105                    Constant:
0:105                      1 (const int)
0:105                  Constant:
0:105                    1 (const int)
0:105                Sequence
0:105                  Constant:
0:105                    0 (const int)
0:105                  Constant:
0:105                    1 (const int)
0:105                  Constant:
0:105                    2 (const int)
0:105              Constant:
0:105                0 (const int)
0:105                0 (const int)
0:105                0 (const int)
0:106      move second child to first child ( temp highp 4-component vector of int)
0:106        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:106          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106            Constant:
0:106              1 (const int)
0:106          Constant:
0:106            1 (const int)
0:106        Convert bool to int ( temp highp 4-component vector of int)
0:106          subgroupOr ( global 4-component vector of bool)
0:106            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:106              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:106                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:106                  Constant:
0:106                    1 (const int)
0:106                Constant:
0:106                  1 (const int)
0:106              Constant:
0:106                0 (const int)
0:106                0 (const int)
0:106                0 (const int)
0:106                0 (const int)
0:108      move second child to first child ( temp highp int)
0:108        direct index ( temp highp int)
0:108          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:108            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108              Constant:
0:108                2 (const int)
0:108            Constant:
0:108              1 (const int)
0:108          Constant:
0:108            0 (const int)
0:108        subgroupXor ( global highp int)
0:108          direct index ( temp highp int)
0:108            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:108              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:108                Constant:
0:108                  0 (const int)
0:108              Constant:
0:108                1 (const int)
0:108            Constant:
0:108              0 (const int)
0:109      move second child to first child ( temp highp 2-component vector of int)
0:109        vector swizzle ( temp highp 2-component vector of int)
0:109          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:109            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109              Constant:
0:109                2 (const int)
0:109            Constant:
0:109              1 (const int)
0:109          Sequence
0:109            Constant:
0:109              0 (const int)
0:109            Constant:
0:109              1 (const int)
0:109        subgroupXor ( global highp 2-component vector of int)
0:109          vector swizzle ( temp highp 2-component vector of int)
0:109            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:109              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:109                Constant:
0:109                  1 (const int)
0:109              Constant:
0:109                1 (const int)
0:109            Sequence
0:109              Constant:
0:109                0 (const int)
0:109              Constant:
0:109                1 (const int)
0:110      move second child to first child ( temp highp 3-component vector of int)
0:110        vector swizzle ( temp highp 3-component vector of int)
0:110          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:110            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110              Constant:
0:110                2 (const int)
0:110            Constant:
0:110              1 (const int)
0:110          Sequence
0:110            Constant:
0:110              0 (const int)
0:110            Constant:
0:110              1 (const int)
0:110            Constant:
0:110              2 (const int)
0:110        subgroupXor ( global highp 3-component vector of int)
0:110          vector swizzle ( temp highp 3-component vector of int)
0:110            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:110              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:110                Constant:
0:110                  2 (const int)
0:110              Constant:
0:110                1 (const int)
0:110            Sequence
0:110              Constant:
0:110                0 (const int)
0:110              Constant:
0:110                1 (const int)
0:110              Constant:
0:110                2 (const int)
0:111      move second child to first child ( temp highp 4-component vector of int)
0:111        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:111          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111            Constant:
0:111              2 (const int)
0:111          Constant:
0:111            1 (const int)
0:111        subgroupXor ( global highp 4-component vector of int)
0:111          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:111            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:111              Constant:
0:111                3 (const int)
0:111            Constant:
0:111              1 (const int)
0:113      move second child to first child ( temp highp uint)
0:113        direct index ( temp highp uint)
0:113          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:113            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113              Constant:
0:113                3 (const int)
0:113            Constant:
0:113              2 (const int)
0:113          Constant:
0:113            0 (const int)
0:113        subgroupXor ( global highp uint)
0:113          direct index ( temp highp uint)
0:113            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:113              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:113                Constant:
0:113                  0 (const int)
0:113              Constant:
0:113                2 (const int)
0:113            Constant:
0:113              0 (const int)
0:114      move second child to first child ( temp highp 2-component vector of uint)
0:114        vector swizzle ( temp highp 2-component vector of uint)
0:114          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:114            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114              Constant:
0:114                3 (const int)
0:114            Constant:
0:114              2 (const int)
0:114          Sequence
0:114            Constant:
0:114              0 (const int)
0:114            Constant:
0:114              1 (const int)
0:114        subgroupXor ( global highp 2-component vector of uint)
0:114          vector swizzle ( temp highp 2-component vector of uint)
0:114            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:114              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:114                Constant:
0:114                  1 (const int)
0:114              Constant:
0:114                2 (const int)
0:114            Sequence
0:114              Constant:
0:114                0 (const int)
0:114              Constant:
0:114                1 (const int)
0:115      move second child to first child ( temp highp 3-component vector of uint)
0:115        vector swizzle ( temp highp 3-component vector of uint)
0:115          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:115            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115              Constant:
0:115                3 (const int)
0:115            Constant:
0:115              2 (const int)
0:115          Sequence
0:115            Constant:
0:115              0 (const int)
0:115            Constant:
0:115              1 (const int)
0:115            Constant:
0:115              2 (const int)
0:115        subgroupXor ( global highp 3-component vector of uint)
0:115          vector swizzle ( temp highp 3-component vector of uint)
0:115            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:115              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:115                Constant:
0:115                  2 (const int)
0:115              Constant:
0:115                2 (const int)
0:115            Sequence
0:115              Constant:
0:115                0 (const int)
0:115              Constant:
0:115                1 (const int)
0:115              Constant:
0:115                2 (const int)
0:116      move second child to first child ( temp highp 4-component vector of uint)
0:116        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:116          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116            Constant:
0:116              3 (const int)
0:116          Constant:
0:116            2 (const int)
0:116        subgroupXor ( global highp 4-component vector of uint)
0:116          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:116            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:116              Constant:
0:116                3 (const int)
0:116            Constant:
0:116              2 (const int)
0:118      move second child to first child ( temp highp int)
0:118        direct index ( temp highp int)
0:118          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:118            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118              Constant:
0:118                0 (const int)
0:118            Constant:
0:118              1 (const int)
0:118          Constant:
0:118            0 (const int)
0:118        Convert bool to int ( temp highp int)
0:118          subgroupXor ( global bool)
0:118            Compare Less Than ( temp bool)
0:118              direct index ( temp highp int)
0:118                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:118                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:118                    Constant:
0:118                      0 (const int)
0:118                  Constant:
0:118                    1 (const int)
0:118                Constant:
0:118                  0 (const int)
0:118              Constant:
0:118                0 (const int)
0:119      move second child to first child ( temp highp 2-component vector of int)
0:119        vector swizzle ( temp highp 2-component vector of int)
0:119          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:119            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119              Constant:
0:119                0 (const int)
0:119            Constant:
0:119              1 (const int)
0:119          Sequence
0:119            Constant:
0:119              0 (const int)
0:119            Constant:
0:119              1 (const int)
0:119        Convert bool to int ( temp highp 2-component vector of int)
0:119          subgroupXor ( global 2-component vector of bool)
0:119            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:119              vector swizzle ( temp highp 2-component vector of int)
0:119                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:119                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:119                    Constant:
0:119                      1 (const int)
0:119                  Constant:
0:119                    1 (const int)
0:119                Sequence
0:119                  Constant:
0:119                    0 (const int)
0:119                  Constant:
0:119                    1 (const int)
0:119              Constant:
0:119                0 (const int)
0:119                0 (const int)
0:120      move second child to first child ( temp highp 3-component vector of int)
0:120        vector swizzle ( temp highp 3-component vector of int)
0:120          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:120            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120              Constant:
0:120                0 (const int)
0:120            Constant:
0:120              1 (const int)
0:120          Sequence
0:120            Constant:
0:120              0 (const int)
0:120            Constant:
0:120              1 (const int)
0:120            Constant:
0:120              2 (const int)
0:120        Convert bool to int ( temp highp 3-component vector of int)
0:120          subgroupXor ( global 3-component vector of bool)
0:120            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:120              vector swizzle ( temp highp 3-component vector of int)
0:120                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:120                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:120                    Constant:
0:120                      1 (const int)
0:120                  Constant:
0:120                    1 (const int)
0:120                Sequence
0:120                  Constant:
0:120                    0 (const int)
0:120                  Constant:
0:120                    1 (const int)
0:120                  Constant:
0:120                    2 (const int)
0:120              Constant:
0:120                0 (const int)
0:120                0 (const int)
0:120                0 (const int)
0:121      move second child to first child ( temp highp 4-component vector of int)
0:121        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:121          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121            Constant:
0:121              0 (const int)
0:121          Constant:
0:121            1 (const int)
0:121        Convert bool to int ( temp highp 4-component vector of int)
0:121          subgroupXor ( global 4-component vector of bool)
0:121            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:121              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:121                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:121                  Constant:
0:121                    1 (const int)
0:121                Constant:
0:121                  1 (const int)
0:121              Constant:
0:121                0 (const int)
0:121                0 (const int)
0:121                0 (const int)
0:121                0 (const int)
0:123      move second child to first child ( temp highp float)
0:123        direct index ( temp highp float)
0:123          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:123            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123              Constant:
0:123                1 (const int)
0:123            Constant:
0:123              0 (const int)
0:123          Constant:
0:123            0 (const int)
0:123        subgroupInclusiveAdd ( global highp float)
0:123          direct index ( temp highp float)
0:123            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:123              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:123                Constant:
0:123                  0 (const int)
0:123              Constant:
0:123                0 (const int)
0:123            Constant:
0:123              0 (const int)
0:124      move second child to first child ( temp highp 2-component vector of float)
0:124        vector swizzle ( temp highp 2-component vector of float)
0:124          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:124            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124              Constant:
0:124                1 (const int)
0:124            Constant:
0:124              0 (const int)
0:124          Sequence
0:124            Constant:
0:124              0 (const int)
0:124            Constant:
0:124              1 (const int)
0:124        subgroupInclusiveAdd ( global highp 2-component vector of float)
0:124          vector swizzle ( temp highp 2-component vector of float)
0:124            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:124              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:124                Constant:
0:124                  1 (const int)
0:124              Constant:
0:124                0 (const int)
0:124            Sequence
0:124              Constant:
0:124                0 (const int)
0:124              Constant:
0:124                1 (const int)
0:125      move second child to first child ( temp highp 3-component vector of float)
0:125        vector swizzle ( temp highp 3-component vector of float)
0:125          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:125            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125              Constant:
0:125                1 (const int)
0:125            Constant:
0:125              0 (const int)
0:125          Sequence
0:125            Constant:
0:125              0 (const int)
0:125            Constant:
0:125              1 (const int)
0:125            Constant:
0:125              2 (const int)
0:125        subgroupInclusiveAdd ( global highp 3-component vector of float)
0:125          vector swizzle ( temp highp 3-component vector of float)
0:125            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:125              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:125                Constant:
0:125                  2 (const int)
0:125              Constant:
0:125                0 (const int)
0:125            Sequence
0:125              Constant:
0:125                0 (const int)
0:125              Constant:
0:125                1 (const int)
0:125              Constant:
0:125                2 (const int)
0:126      move second child to first child ( temp highp 4-component vector of float)
0:126        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:126          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126            Constant:
0:126              1 (const int)
0:126          Constant:
0:126            0 (const int)
0:126        subgroupInclusiveAdd ( global highp 4-component vector of float)
0:126          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:126            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:126              Constant:
0:126                3 (const int)
0:126            Constant:
0:126              0 (const int)
0:128      move second child to first child ( temp highp int)
0:128        direct index ( temp highp int)
0:128          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:128            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128              Constant:
0:128                2 (const int)
0:128            Constant:
0:128              1 (const int)
0:128          Constant:
0:128            0 (const int)
0:128        subgroupInclusiveAdd ( global highp int)
0:128          direct index ( temp highp int)
0:128            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:128              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:128                Constant:
0:128                  0 (const int)
0:128              Constant:
0:128                1 (const int)
0:128            Constant:
0:128              0 (const int)
0:129      move second child to first child ( temp highp 2-component vector of int)
0:129        vector swizzle ( temp highp 2-component vector of int)
0:129          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:129            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129              Constant:
0:129                2 (const int)
0:129            Constant:
0:129              1 (const int)
0:129          Sequence
0:129            Constant:
0:129              0 (const int)
0:129            Constant:
0:129              1 (const int)
0:129        subgroupInclusiveAdd ( global highp 2-component vector of int)
0:129          vector swizzle ( temp highp 2-component vector of int)
0:129            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:129              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:129                Constant:
0:129                  1 (const int)
0:129              Constant:
0:129                1 (const int)
0:129            Sequence
0:129              Constant:
0:129                0 (const int)
0:129              Constant:
0:129                1 (const int)
0:130      move second child to first child ( temp highp 3-component vector of int)
0:130        vector swizzle ( temp highp 3-component vector of int)
0:130          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:130            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130              Constant:
0:130                2 (const int)
0:130            Constant:
0:130              1 (const int)
0:130          Sequence
0:130            Constant:
0:130              0 (const int)
0:130            Constant:
0:130              1 (const int)
0:130            Constant:
0:130              2 (const int)
0:130        subgroupInclusiveAdd ( global highp 3-component vector of int)
0:130          vector swizzle ( temp highp 3-component vector of int)
0:130            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:130              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:130                Constant:
0:130                  2 (const int)
0:130              Constant:
0:130                1 (const int)
0:130            Sequence
0:130              Constant:
0:130                0 (const int)
0:130              Constant:
0:130                1 (const int)
0:130              Constant:
0:130                2 (const int)
0:131      move second child to first child ( temp highp 4-component vector of int)
0:131        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:131          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131            Constant:
0:131              2 (const int)
0:131          Constant:
0:131            1 (const int)
0:131        subgroupInclusiveAdd ( global highp 4-component vector of int)
0:131          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:131            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:131              Constant:
0:131                3 (const int)
0:131            Constant:
0:131              1 (const int)
0:133      move second child to first child ( temp highp uint)
0:133        direct index ( temp highp uint)
0:133          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:133            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133              Constant:
0:133                3 (const int)
0:133            Constant:
0:133              2 (const int)
0:133          Constant:
0:133            0 (const int)
0:133        subgroupInclusiveAdd ( global highp uint)
0:133          direct index ( temp highp uint)
0:133            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:133              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:133                Constant:
0:133                  0 (const int)
0:133              Constant:
0:133                2 (const int)
0:133            Constant:
0:133              0 (const int)
0:134      move second child to first child ( temp highp 2-component vector of uint)
0:134        vector swizzle ( temp highp 2-component vector of uint)
0:134          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:134            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134              Constant:
0:134                3 (const int)
0:134            Constant:
0:134              2 (const int)
0:134          Sequence
0:134            Constant:
0:134              0 (const int)
0:134            Constant:
0:134              1 (const int)
0:134        subgroupInclusiveAdd ( global highp 2-component vector of uint)
0:134          vector swizzle ( temp highp 2-component vector of uint)
0:134            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:134              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:134                Constant:
0:134                  1 (const int)
0:134              Constant:
0:134                2 (const int)
0:134            Sequence
0:134              Constant:
0:134                0 (const int)
0:134              Constant:
0:134                1 (const int)
0:135      move second child to first child ( temp highp 3-component vector of uint)
0:135        vector swizzle ( temp highp 3-component vector of uint)
0:135          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:135            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135              Constant:
0:135                3 (const int)
0:135            Constant:
0:135              2 (const int)
0:135          Sequence
0:135            Constant:
0:135              0 (const int)
0:135            Constant:
0:135              1 (const int)
0:135            Constant:
0:135              2 (const int)
0:135        subgroupInclusiveAdd ( global highp 3-component vector of uint)
0:135          vector swizzle ( temp highp 3-component vector of uint)
0:135            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:135              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:135                Constant:
0:135                  2 (const int)
0:135              Constant:
0:135                2 (const int)
0:135            Sequence
0:135              Constant:
0:135                0 (const int)
0:135              Constant:
0:135                1 (const int)
0:135              Constant:
0:135                2 (const int)
0:136      move second child to first child ( temp highp 4-component vector of uint)
0:136        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:136          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136            Constant:
0:136              3 (const int)
0:136          Constant:
0:136            2 (const int)
0:136        subgroupInclusiveAdd ( global highp 4-component vector of uint)
0:136          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:136            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:136              Constant:
0:136                3 (const int)
0:136            Constant:
0:136              2 (const int)
0:138      move second child to first child ( temp highp float)
0:138        direct index ( temp highp float)
0:138          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:138            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138              Constant:
0:138                0 (const int)
0:138            Constant:
0:138              0 (const int)
0:138          Constant:
0:138            0 (const int)
0:138        subgroupInclusiveMul ( global highp float)
0:138          direct index ( temp highp float)
0:138            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:138              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:138                Constant:
0:138                  0 (const int)
0:138              Constant:
0:138                0 (const int)
0:138            Constant:
0:138              0 (const int)
0:139      move second child to first child ( temp highp 2-component vector of float)
0:139        vector swizzle ( temp highp 2-component vector of float)
0:139          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:139            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139              Constant:
0:139                0 (const int)
0:139            Constant:
0:139              0 (const int)
0:139          Sequence
0:139            Constant:
0:139              0 (const int)
0:139            Constant:
0:139              1 (const int)
0:139        subgroupInclusiveMul ( global highp 2-component vector of float)
0:139          vector swizzle ( temp highp 2-component vector of float)
0:139            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:139              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:139                Constant:
0:139                  1 (const int)
0:139              Constant:
0:139                0 (const int)
0:139            Sequence
0:139              Constant:
0:139                0 (const int)
0:139              Constant:
0:139                1 (const int)
0:140      move second child to first child ( temp highp 3-component vector of float)
0:140        vector swizzle ( temp highp 3-component vector of float)
0:140          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:140            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140              Constant:
0:140                0 (const int)
0:140            Constant:
0:140              0 (const int)
0:140          Sequence
0:140            Constant:
0:140              0 (const int)
0:140            Constant:
0:140              1 (const int)
0:140            Constant:
0:140              2 (const int)
0:140        subgroupInclusiveMul ( global highp 3-component vector of float)
0:140          vector swizzle ( temp highp 3-component vector of float)
0:140            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:140              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:140                Constant:
0:140                  2 (const int)
0:140              Constant:
0:140                0 (const int)
0:140            Sequence
0:140              Constant:
0:140                0 (const int)
0:140              Constant:
0:140                1 (const int)
0:140              Constant:
0:140                2 (const int)
0:141      move second child to first child ( temp highp 4-component vector of float)
0:141        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:141          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141            Constant:
0:141              0 (const int)
0:141          Constant:
0:141            0 (const int)
0:141        subgroupInclusiveMul ( global highp 4-component vector of float)
0:141          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:141            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:141              Constant:
0:141                3 (const int)
0:141            Constant:
0:141              0 (const int)
0:143      move second child to first child ( temp highp int)
0:143        direct index ( temp highp int)
0:143          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:143            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143              Constant:
0:143                1 (const int)
0:143            Constant:
0:143              1 (const int)
0:143          Constant:
0:143            0 (const int)
0:143        subgroupInclusiveMul ( global highp int)
0:143          direct index ( temp highp int)
0:143            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:143              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:143                Constant:
0:143                  0 (const int)
0:143              Constant:
0:143                1 (const int)
0:143            Constant:
0:143              0 (const int)
0:144      move second child to first child ( temp highp 2-component vector of int)
0:144        vector swizzle ( temp highp 2-component vector of int)
0:144          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:144            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144              Constant:
0:144                1 (const int)
0:144            Constant:
0:144              1 (const int)
0:144          Sequence
0:144            Constant:
0:144              0 (const int)
0:144            Constant:
0:144              1 (const int)
0:144        subgroupInclusiveMul ( global highp 2-component vector of int)
0:144          vector swizzle ( temp highp 2-component vector of int)
0:144            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:144              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:144                Constant:
0:144                  1 (const int)
0:144              Constant:
0:144                1 (const int)
0:144            Sequence
0:144              Constant:
0:144                0 (const int)
0:144              Constant:
0:144                1 (const int)
0:145      move second child to first child ( temp highp 3-component vector of int)
0:145        vector swizzle ( temp highp 3-component vector of int)
0:145          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:145            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145              Constant:
0:145                1 (const int)
0:145            Constant:
0:145              1 (const int)
0:145          Sequence
0:145            Constant:
0:145              0 (const int)
0:145            Constant:
0:145              1 (const int)
0:145            Constant:
0:145              2 (const int)
0:145        subgroupInclusiveMul ( global highp 3-component vector of int)
0:145          vector swizzle ( temp highp 3-component vector of int)
0:145            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:145              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:145                Constant:
0:145                  2 (const int)
0:145              Constant:
0:145                1 (const int)
0:145            Sequence
0:145              Constant:
0:145                0 (const int)
0:145              Constant:
0:145                1 (const int)
0:145              Constant:
0:145                2 (const int)
0:146      move second child to first child ( temp highp 4-component vector of int)
0:146        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:146          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146            Constant:
0:146              1 (const int)
0:146          Constant:
0:146            1 (const int)
0:146        subgroupInclusiveMul ( global highp 4-component vector of int)
0:146          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:146            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:146              Constant:
0:146                3 (const int)
0:146            Constant:
0:146              1 (const int)
0:148      move second child to first child ( temp highp uint)
0:148        direct index ( temp highp uint)
0:148          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:148            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148              Constant:
0:148                2 (const int)
0:148            Constant:
0:148              2 (const int)
0:148          Constant:
0:148            0 (const int)
0:148        subgroupInclusiveMul ( global highp uint)
0:148          direct index ( temp highp uint)
0:148            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:148              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:148                Constant:
0:148                  0 (const int)
0:148              Constant:
0:148                2 (const int)
0:148            Constant:
0:148              0 (const int)
0:149      move second child to first child ( temp highp 2-component vector of uint)
0:149        vector swizzle ( temp highp 2-component vector of uint)
0:149          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:149            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149              Constant:
0:149                2 (const int)
0:149            Constant:
0:149              2 (const int)
0:149          Sequence
0:149            Constant:
0:149              0 (const int)
0:149            Constant:
0:149              1 (const int)
0:149        subgroupInclusiveMul ( global highp 2-component vector of uint)
0:149          vector swizzle ( temp highp 2-component vector of uint)
0:149            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:149              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:149                Constant:
0:149                  1 (const int)
0:149              Constant:
0:149                2 (const int)
0:149            Sequence
0:149              Constant:
0:149                0 (const int)
0:149              Constant:
0:149                1 (const int)
0:150      move second child to first child ( temp highp 3-component vector of uint)
0:150        vector swizzle ( temp highp 3-component vector of uint)
0:150          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:150            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150              Constant:
0:150                2 (const int)
0:150            Constant:
0:150              2 (const int)
0:150          Sequence
0:150            Constant:
0:150              0 (const int)
0:150            Constant:
0:150              1 (const int)
0:150            Constant:
0:150              2 (const int)
0:150        subgroupInclusiveMul ( global highp 3-component vector of uint)
0:150          vector swizzle ( temp highp 3-component vector of uint)
0:150            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:150              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:150                Constant:
0:150                  2 (const int)
0:150              Constant:
0:150                2 (const int)
0:150            Sequence
0:150              Constant:
0:150                0 (const int)
0:150              Constant:
0:150                1 (const int)
0:150              Constant:
0:150                2 (const int)
0:151      move second child to first child ( temp highp 4-component vector of uint)
0:151        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:151          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151            Constant:
0:151              2 (const int)
0:151          Constant:
0:151            2 (const int)
0:151        subgroupInclusiveMul ( global highp 4-component vector of uint)
0:151          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:151            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:151              Constant:
0:151                3 (const int)
0:151            Constant:
0:151              2 (const int)
0:153      move second child to first child ( temp highp float)
0:153        direct index ( temp highp float)
0:153          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:153            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153              Constant:
0:153                3 (const int)
0:153            Constant:
0:153              0 (const int)
0:153          Constant:
0:153            0 (const int)
0:153        subgroupInclusiveMin ( global highp float)
0:153          direct index ( temp highp float)
0:153            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:153              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:153                Constant:
0:153                  0 (const int)
0:153              Constant:
0:153                0 (const int)
0:153            Constant:
0:153              0 (const int)
0:154      move second child to first child ( temp highp 2-component vector of float)
0:154        vector swizzle ( temp highp 2-component vector of float)
0:154          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:154            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154              Constant:
0:154                3 (const int)
0:154            Constant:
0:154              0 (const int)
0:154          Sequence
0:154            Constant:
0:154              0 (const int)
0:154            Constant:
0:154              1 (const int)
0:154        subgroupInclusiveMin ( global highp 2-component vector of float)
0:154          vector swizzle ( temp highp 2-component vector of float)
0:154            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:154              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:154                Constant:
0:154                  1 (const int)
0:154              Constant:
0:154                0 (const int)
0:154            Sequence
0:154              Constant:
0:154                0 (const int)
0:154              Constant:
0:154                1 (const int)
0:155      move second child to first child ( temp highp 3-component vector of float)
0:155        vector swizzle ( temp highp 3-component vector of float)
0:155          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:155            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155              Constant:
0:155                3 (const int)
0:155            Constant:
0:155              0 (const int)
0:155          Sequence
0:155            Constant:
0:155              0 (const int)
0:155            Constant:
0:155              1 (const int)
0:155            Constant:
0:155              2 (const int)
0:155        subgroupInclusiveMin ( global highp 3-component vector of float)
0:155          vector swizzle ( temp highp 3-component vector of float)
0:155            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:155              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:155                Constant:
0:155                  2 (const int)
0:155              Constant:
0:155                0 (const int)
0:155            Sequence
0:155              Constant:
0:155                0 (const int)
0:155              Constant:
0:155                1 (const int)
0:155              Constant:
0:155                2 (const int)
0:156      move second child to first child ( temp highp 4-component vector of float)
0:156        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:156          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156            Constant:
0:156              3 (const int)
0:156          Constant:
0:156            0 (const int)
0:156        subgroupInclusiveMin ( global highp 4-component vector of float)
0:156          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:156            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:156              Constant:
0:156                3 (const int)
0:156            Constant:
0:156              0 (const int)
0:158      move second child to first child ( temp highp int)
0:158        direct index ( temp highp int)
0:158          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:158            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158              Constant:
0:158                0 (const int)
0:158            Constant:
0:158              1 (const int)
0:158          Constant:
0:158            0 (const int)
0:158        subgroupInclusiveMin ( global highp int)
0:158          direct index ( temp highp int)
0:158            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:158              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:158                Constant:
0:158                  0 (const int)
0:158              Constant:
0:158                1 (const int)
0:158            Constant:
0:158              0 (const int)
0:159      move second child to first child ( temp highp 2-component vector of int)
0:159        vector swizzle ( temp highp 2-component vector of int)
0:159          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:159            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159              Constant:
0:159                0 (const int)
0:159            Constant:
0:159              1 (const int)
0:159          Sequence
0:159            Constant:
0:159              0 (const int)
0:159            Constant:
0:159              1 (const int)
0:159        subgroupInclusiveMin ( global highp 2-component vector of int)
0:159          vector swizzle ( temp highp 2-component vector of int)
0:159            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:159              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:159                Constant:
0:159                  1 (const int)
0:159              Constant:
0:159                1 (const int)
0:159            Sequence
0:159              Constant:
0:159                0 (const int)
0:159              Constant:
0:159                1 (const int)
0:160      move second child to first child ( temp highp 3-component vector of int)
0:160        vector swizzle ( temp highp 3-component vector of int)
0:160          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:160            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160              Constant:
0:160                0 (const int)
0:160            Constant:
0:160              1 (const int)
0:160          Sequence
0:160            Constant:
0:160              0 (const int)
0:160            Constant:
0:160              1 (const int)
0:160            Constant:
0:160              2 (const int)
0:160        subgroupInclusiveMin ( global highp 3-component vector of int)
0:160          vector swizzle ( temp highp 3-component vector of int)
0:160            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:160              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:160                Constant:
0:160                  2 (const int)
0:160              Constant:
0:160                1 (const int)
0:160            Sequence
0:160              Constant:
0:160                0 (const int)
0:160              Constant:
0:160                1 (const int)
0:160              Constant:
0:160                2 (const int)
0:161      move second child to first child ( temp highp 4-component vector of int)
0:161        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:161          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161            Constant:
0:161              0 (const int)
0:161          Constant:
0:161            1 (const int)
0:161        subgroupInclusiveMin ( global highp 4-component vector of int)
0:161          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:161            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:161              Constant:
0:161                3 (const int)
0:161            Constant:
0:161              1 (const int)
0:163      move second child to first child ( temp highp uint)
0:163        direct index ( temp highp uint)
0:163          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:163            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163              Constant:
0:163                1 (const int)
0:163            Constant:
0:163              2 (const int)
0:163          Constant:
0:163            0 (const int)
0:163        subgroupInclusiveMin ( global highp uint)
0:163          direct index ( temp highp uint)
0:163            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:163              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:163                Constant:
0:163                  0 (const int)
0:163              Constant:
0:163                2 (const int)
0:163            Constant:
0:163              0 (const int)
0:164      move second child to first child ( temp highp 2-component vector of uint)
0:164        vector swizzle ( temp highp 2-component vector of uint)
0:164          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:164            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164              Constant:
0:164                1 (const int)
0:164            Constant:
0:164              2 (const int)
0:164          Sequence
0:164            Constant:
0:164              0 (const int)
0:164            Constant:
0:164              1 (const int)
0:164        subgroupInclusiveMin ( global highp 2-component vector of uint)
0:164          vector swizzle ( temp highp 2-component vector of uint)
0:164            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:164              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:164                Constant:
0:164                  1 (const int)
0:164              Constant:
0:164                2 (const int)
0:164            Sequence
0:164              Constant:
0:164                0 (const int)
0:164              Constant:
0:164                1 (const int)
0:165      move second child to first child ( temp highp 3-component vector of uint)
0:165        vector swizzle ( temp highp 3-component vector of uint)
0:165          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:165            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165              Constant:
0:165                1 (const int)
0:165            Constant:
0:165              2 (const int)
0:165          Sequence
0:165            Constant:
0:165              0 (const int)
0:165            Constant:
0:165              1 (const int)
0:165            Constant:
0:165              2 (const int)
0:165        subgroupInclusiveMin ( global highp 3-component vector of uint)
0:165          vector swizzle ( temp highp 3-component vector of uint)
0:165            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:165              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:165                Constant:
0:165                  2 (const int)
0:165              Constant:
0:165                2 (const int)
0:165            Sequence
0:165              Constant:
0:165                0 (const int)
0:165              Constant:
0:165                1 (const int)
0:165              Constant:
0:165                2 (const int)
0:166      move second child to first child ( temp highp 4-component vector of uint)
0:166        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:166          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166            Constant:
0:166              1 (const int)
0:166          Constant:
0:166            2 (const int)
0:166        subgroupInclusiveMin ( global highp 4-component vector of uint)
0:166          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:166            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:166              Constant:
0:166                3 (const int)
0:166            Constant:
0:166              2 (const int)
0:168      move second child to first child ( temp highp float)
0:168        direct index ( temp highp float)
0:168          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:168            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168              Constant:
0:168                2 (const int)
0:168            Constant:
0:168              0 (const int)
0:168          Constant:
0:168            0 (const int)
0:168        subgroupInclusiveMax ( global highp float)
0:168          direct index ( temp highp float)
0:168            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:168              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:168                Constant:
0:168                  0 (const int)
0:168              Constant:
0:168                0 (const int)
0:168            Constant:
0:168              0 (const int)
0:169      move second child to first child ( temp highp 2-component vector of float)
0:169        vector swizzle ( temp highp 2-component vector of float)
0:169          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:169            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169              Constant:
0:169                2 (const int)
0:169            Constant:
0:169              0 (const int)
0:169          Sequence
0:169            Constant:
0:169              0 (const int)
0:169            Constant:
0:169              1 (const int)
0:169        subgroupInclusiveMax ( global highp 2-component vector of float)
0:169          vector swizzle ( temp highp 2-component vector of float)
0:169            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:169              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:169                Constant:
0:169                  1 (const int)
0:169              Constant:
0:169                0 (const int)
0:169            Sequence
0:169              Constant:
0:169                0 (const int)
0:169              Constant:
0:169                1 (const int)
0:170      move second child to first child ( temp highp 3-component vector of float)
0:170        vector swizzle ( temp highp 3-component vector of float)
0:170          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:170            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170              Constant:
0:170                2 (const int)
0:170            Constant:
0:170              0 (const int)
0:170          Sequence
0:170            Constant:
0:170              0 (const int)
0:170            Constant:
0:170              1 (const int)
0:170            Constant:
0:170              2 (const int)
0:170        subgroupInclusiveMax ( global highp 3-component vector of float)
0:170          vector swizzle ( temp highp 3-component vector of float)
0:170            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:170              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:170                Constant:
0:170                  2 (const int)
0:170              Constant:
0:170                0 (const int)
0:170            Sequence
0:170              Constant:
0:170                0 (const int)
0:170              Constant:
0:170                1 (const int)
0:170              Constant:
0:170                2 (const int)
0:171      move second child to first child ( temp highp 4-component vector of float)
0:171        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:171          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171            Constant:
0:171              2 (const int)
0:171          Constant:
0:171            0 (const int)
0:171        subgroupInclusiveMax ( global highp 4-component vector of float)
0:171          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:171            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:171              Constant:
0:171                3 (const int)
0:171            Constant:
0:171              0 (const int)
0:173      move second child to first child ( temp highp int)
0:173        direct index ( temp highp int)
0:173          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:173            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173              Constant:
0:173                3 (const int)
0:173            Constant:
0:173              1 (const int)
0:173          Constant:
0:173            0 (const int)
0:173        subgroupInclusiveMax ( global highp int)
0:173          direct index ( temp highp int)
0:173            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:173              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:173                Constant:
0:173                  0 (const int)
0:173              Constant:
0:173                1 (const int)
0:173            Constant:
0:173              0 (const int)
0:174      move second child to first child ( temp highp 2-component vector of int)
0:174        vector swizzle ( temp highp 2-component vector of int)
0:174          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:174            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174              Constant:
0:174                3 (const int)
0:174            Constant:
0:174              1 (const int)
0:174          Sequence
0:174            Constant:
0:174              0 (const int)
0:174            Constant:
0:174              1 (const int)
0:174        subgroupInclusiveMax ( global highp 2-component vector of int)
0:174          vector swizzle ( temp highp 2-component vector of int)
0:174            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:174              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:174                Constant:
0:174                  1 (const int)
0:174              Constant:
0:174                1 (const int)
0:174            Sequence
0:174              Constant:
0:174                0 (const int)
0:174              Constant:
0:174                1 (const int)
0:175      move second child to first child ( temp highp 3-component vector of int)
0:175        vector swizzle ( temp highp 3-component vector of int)
0:175          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:175            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175              Constant:
0:175                3 (const int)
0:175            Constant:
0:175              1 (const int)
0:175          Sequence
0:175            Constant:
0:175              0 (const int)
0:175            Constant:
0:175              1 (const int)
0:175            Constant:
0:175              2 (const int)
0:175        subgroupInclusiveMax ( global highp 3-component vector of int)
0:175          vector swizzle ( temp highp 3-component vector of int)
0:175            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:175              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:175                Constant:
0:175                  2 (const int)
0:175              Constant:
0:175                1 (const int)
0:175            Sequence
0:175              Constant:
0:175                0 (const int)
0:175              Constant:
0:175                1 (const int)
0:175              Constant:
0:175                2 (const int)
0:176      move second child to first child ( temp highp 4-component vector of int)
0:176        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:176          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176            Constant:
0:176              3 (const int)
0:176          Constant:
0:176            1 (const int)
0:176        subgroupInclusiveMax ( global highp 4-component vector of int)
0:176          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:176            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:176              Constant:
0:176                3 (const int)
0:176            Constant:
0:176              1 (const int)
0:178      move second child to first child ( temp highp uint)
0:178        direct index ( temp highp uint)
0:178          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:178            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178              Constant:
0:178                0 (const int)
0:178            Constant:
0:178              2 (const int)
0:178          Constant:
0:178            0 (const int)
0:178        subgroupInclusiveMax ( global highp uint)
0:178          direct index ( temp highp uint)
0:178            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:178              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:178                Constant:
0:178                  0 (const int)
0:178              Constant:
0:178                2 (const int)
0:178            Constant:
0:178              0 (const int)
0:179      move second child to first child ( temp highp 2-component vector of uint)
0:179        vector swizzle ( temp highp 2-component vector of uint)
0:179          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:179            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179              Constant:
0:179                0 (const int)
0:179            Constant:
0:179              2 (const int)
0:179          Sequence
0:179            Constant:
0:179              0 (const int)
0:179            Constant:
0:179              1 (const int)
0:179        subgroupInclusiveMax ( global highp 2-component vector of uint)
0:179          vector swizzle ( temp highp 2-component vector of uint)
0:179            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:179              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:179                Constant:
0:179                  1 (const int)
0:179              Constant:
0:179                2 (const int)
0:179            Sequence
0:179              Constant:
0:179                0 (const int)
0:179              Constant:
0:179                1 (const int)
0:180      move second child to first child ( temp highp 3-component vector of uint)
0:180        vector swizzle ( temp highp 3-component vector of uint)
0:180          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:180            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180              Constant:
0:180                0 (const int)
0:180            Constant:
0:180              2 (const int)
0:180          Sequence
0:180            Constant:
0:180              0 (const int)
0:180            Constant:
0:180              1 (const int)
0:180            Constant:
0:180              2 (const int)
0:180        subgroupInclusiveMax ( global highp 3-component vector of uint)
0:180          vector swizzle ( temp highp 3-component vector of uint)
0:180            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:180              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:180                Constant:
0:180                  2 (const int)
0:180              Constant:
0:180                2 (const int)
0:180            Sequence
0:180              Constant:
0:180                0 (const int)
0:180              Constant:
0:180                1 (const int)
0:180              Constant:
0:180                2 (const int)
0:181      move second child to first child ( temp highp 4-component vector of uint)
0:181        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:181          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181            Constant:
0:181              0 (const int)
0:181          Constant:
0:181            2 (const int)
0:181        subgroupInclusiveMax ( global highp 4-component vector of uint)
0:181          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:181            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:181              Constant:
0:181                3 (const int)
0:181            Constant:
0:181              2 (const int)
0:183      move second child to first child ( temp highp int)
0:183        direct index ( temp highp int)
0:183          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:183            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183              Constant:
0:183                1 (const int)
0:183            Constant:
0:183              1 (const int)
0:183          Constant:
0:183            0 (const int)
0:183        subgroupInclusiveAnd ( global highp int)
0:183          direct index ( temp highp int)
0:183            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:183              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:183                Constant:
0:183                  0 (const int)
0:183              Constant:
0:183                1 (const int)
0:183            Constant:
0:183              0 (const int)
0:184      move second child to first child ( temp highp 2-component vector of int)
0:184        vector swizzle ( temp highp 2-component vector of int)
0:184          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:184            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184              Constant:
0:184                1 (const int)
0:184            Constant:
0:184              1 (const int)
0:184          Sequence
0:184            Constant:
0:184              0 (const int)
0:184            Constant:
0:184              1 (const int)
0:184        subgroupInclusiveAnd ( global highp 2-component vector of int)
0:184          vector swizzle ( temp highp 2-component vector of int)
0:184            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:184              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:184                Constant:
0:184                  1 (const int)
0:184              Constant:
0:184                1 (const int)
0:184            Sequence
0:184              Constant:
0:184                0 (const int)
0:184              Constant:
0:184                1 (const int)
0:185      move second child to first child ( temp highp 3-component vector of int)
0:185        vector swizzle ( temp highp 3-component vector of int)
0:185          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:185            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185              Constant:
0:185                1 (const int)
0:185            Constant:
0:185              1 (const int)
0:185          Sequence
0:185            Constant:
0:185              0 (const int)
0:185            Constant:
0:185              1 (const int)
0:185            Constant:
0:185              2 (const int)
0:185        subgroupInclusiveAnd ( global highp 3-component vector of int)
0:185          vector swizzle ( temp highp 3-component vector of int)
0:185            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:185              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:185                Constant:
0:185                  2 (const int)
0:185              Constant:
0:185                1 (const int)
0:185            Sequence
0:185              Constant:
0:185                0 (const int)
0:185              Constant:
0:185                1 (const int)
0:185              Constant:
0:185                2 (const int)
0:186      move second child to first child ( temp highp 4-component vector of int)
0:186        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:186          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186            Constant:
0:186              1 (const int)
0:186          Constant:
0:186            1 (const int)
0:186        subgroupInclusiveAnd ( global highp 4-component vector of int)
0:186          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:186            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:186              Constant:
0:186                3 (const int)
0:186            Constant:
0:186              1 (const int)
0:188      move second child to first child ( temp highp uint)
0:188        direct index ( temp highp uint)
0:188          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:188            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188              Constant:
0:188                2 (const int)
0:188            Constant:
0:188              2 (const int)
0:188          Constant:
0:188            0 (const int)
0:188        subgroupInclusiveAnd ( global highp uint)
0:188          direct index ( temp highp uint)
0:188            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:188              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:188                Constant:
0:188                  0 (const int)
0:188              Constant:
0:188                2 (const int)
0:188            Constant:
0:188              0 (const int)
0:189      move second child to first child ( temp highp 2-component vector of uint)
0:189        vector swizzle ( temp highp 2-component vector of uint)
0:189          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:189            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189              Constant:
0:189                2 (const int)
0:189            Constant:
0:189              2 (const int)
0:189          Sequence
0:189            Constant:
0:189              0 (const int)
0:189            Constant:
0:189              1 (const int)
0:189        subgroupInclusiveAnd ( global highp 2-component vector of uint)
0:189          vector swizzle ( temp highp 2-component vector of uint)
0:189            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:189              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:189                Constant:
0:189                  1 (const int)
0:189              Constant:
0:189                2 (const int)
0:189            Sequence
0:189              Constant:
0:189                0 (const int)
0:189              Constant:
0:189                1 (const int)
0:190      move second child to first child ( temp highp 3-component vector of uint)
0:190        vector swizzle ( temp highp 3-component vector of uint)
0:190          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:190            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190              Constant:
0:190                2 (const int)
0:190            Constant:
0:190              2 (const int)
0:190          Sequence
0:190            Constant:
0:190              0 (const int)
0:190            Constant:
0:190              1 (const int)
0:190            Constant:
0:190              2 (const int)
0:190        subgroupInclusiveAnd ( global highp 3-component vector of uint)
0:190          vector swizzle ( temp highp 3-component vector of uint)
0:190            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:190              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:190                Constant:
0:190                  2 (const int)
0:190              Constant:
0:190                2 (const int)
0:190            Sequence
0:190              Constant:
0:190                0 (const int)
0:190              Constant:
0:190                1 (const int)
0:190              Constant:
0:190                2 (const int)
0:191      move second child to first child ( temp highp 4-component vector of uint)
0:191        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:191          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191            Constant:
0:191              2 (const int)
0:191          Constant:
0:191            2 (const int)
0:191        subgroupInclusiveAnd ( global highp 4-component vector of uint)
0:191          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:191            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:191              Constant:
0:191                3 (const int)
0:191            Constant:
0:191              2 (const int)
0:193      move second child to first child ( temp highp int)
0:193        direct index ( temp highp int)
0:193          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:193            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193              Constant:
0:193                3 (const int)
0:193            Constant:
0:193              1 (const int)
0:193          Constant:
0:193            0 (const int)
0:193        Convert bool to int ( temp highp int)
0:193          subgroupInclusiveAnd ( global bool)
0:193            Compare Less Than ( temp bool)
0:193              direct index ( temp highp int)
0:193                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:193                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:193                    Constant:
0:193                      0 (const int)
0:193                  Constant:
0:193                    1 (const int)
0:193                Constant:
0:193                  0 (const int)
0:193              Constant:
0:193                0 (const int)
0:194      move second child to first child ( temp highp 2-component vector of int)
0:194        vector swizzle ( temp highp 2-component vector of int)
0:194          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:194            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194              Constant:
0:194                3 (const int)
0:194            Constant:
0:194              1 (const int)
0:194          Sequence
0:194            Constant:
0:194              0 (const int)
0:194            Constant:
0:194              1 (const int)
0:194        Convert bool to int ( temp highp 2-component vector of int)
0:194          subgroupInclusiveAnd ( global 2-component vector of bool)
0:194            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:194              vector swizzle ( temp highp 2-component vector of int)
0:194                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:194                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:194                    Constant:
0:194                      1 (const int)
0:194                  Constant:
0:194                    1 (const int)
0:194                Sequence
0:194                  Constant:
0:194                    0 (const int)
0:194                  Constant:
0:194                    1 (const int)
0:194              Constant:
0:194                0 (const int)
0:194                0 (const int)
0:195      move second child to first child ( temp highp 3-component vector of int)
0:195        vector swizzle ( temp highp 3-component vector of int)
0:195          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:195            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195              Constant:
0:195                3 (const int)
0:195            Constant:
0:195              1 (const int)
0:195          Sequence
0:195            Constant:
0:195              0 (const int)
0:195            Constant:
0:195              1 (const int)
0:195            Constant:
0:195              2 (const int)
0:195        Convert bool to int ( temp highp 3-component vector of int)
0:195          subgroupInclusiveAnd ( global 3-component vector of bool)
0:195            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:195              vector swizzle ( temp highp 3-component vector of int)
0:195                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:195                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:195                    Constant:
0:195                      1 (const int)
0:195                  Constant:
0:195                    1 (const int)
0:195                Sequence
0:195                  Constant:
0:195                    0 (const int)
0:195                  Constant:
0:195                    1 (const int)
0:195                  Constant:
0:195                    2 (const int)
0:195              Constant:
0:195                0 (const int)
0:195                0 (const int)
0:195                0 (const int)
0:196      move second child to first child ( temp highp 4-component vector of int)
0:196        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:196          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196            Constant:
0:196              3 (const int)
0:196          Constant:
0:196            1 (const int)
0:196        Convert bool to int ( temp highp 4-component vector of int)
0:196          subgroupInclusiveAnd ( global 4-component vector of bool)
0:196            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:196              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:196                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:196                  Constant:
0:196                    1 (const int)
0:196                Constant:
0:196                  1 (const int)
0:196              Constant:
0:196                0 (const int)
0:196                0 (const int)
0:196                0 (const int)
0:196                0 (const int)
0:198      move second child to first child ( temp highp int)
0:198        direct index ( temp highp int)
0:198          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:198            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198              Constant:
0:198                0 (const int)
0:198            Constant:
0:198              1 (const int)
0:198          Constant:
0:198            0 (const int)
0:198        subgroupInclusiveOr ( global highp int)
0:198          direct index ( temp highp int)
0:198            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:198              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:198                Constant:
0:198                  0 (const int)
0:198              Constant:
0:198                1 (const int)
0:198            Constant:
0:198              0 (const int)
0:199      move second child to first child ( temp highp 2-component vector of int)
0:199        vector swizzle ( temp highp 2-component vector of int)
0:199          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:199            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199              Constant:
0:199                0 (const int)
0:199            Constant:
0:199              1 (const int)
0:199          Sequence
0:199            Constant:
0:199              0 (const int)
0:199            Constant:
0:199              1 (const int)
0:199        subgroupInclusiveOr ( global highp 2-component vector of int)
0:199          vector swizzle ( temp highp 2-component vector of int)
0:199            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:199              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:199                Constant:
0:199                  1 (const int)
0:199              Constant:
0:199                1 (const int)
0:199            Sequence
0:199              Constant:
0:199                0 (const int)
0:199              Constant:
0:199                1 (const int)
0:200      move second child to first child ( temp highp 3-component vector of int)
0:200        vector swizzle ( temp highp 3-component vector of int)
0:200          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:200            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200              Constant:
0:200                0 (const int)
0:200            Constant:
0:200              1 (const int)
0:200          Sequence
0:200            Constant:
0:200              0 (const int)
0:200            Constant:
0:200              1 (const int)
0:200            Constant:
0:200              2 (const int)
0:200        subgroupInclusiveOr ( global highp 3-component vector of int)
0:200          vector swizzle ( temp highp 3-component vector of int)
0:200            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:200              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:200                Constant:
0:200                  2 (const int)
0:200              Constant:
0:200                1 (const int)
0:200            Sequence
0:200              Constant:
0:200                0 (const int)
0:200              Constant:
0:200                1 (const int)
0:200              Constant:
0:200                2 (const int)
0:201      move second child to first child ( temp highp 4-component vector of int)
0:201        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:201          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201            Constant:
0:201              0 (const int)
0:201          Constant:
0:201            1 (const int)
0:201        subgroupInclusiveOr ( global highp 4-component vector of int)
0:201          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:201            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:201              Constant:
0:201                3 (const int)
0:201            Constant:
0:201              1 (const int)
0:203      move second child to first child ( temp highp uint)
0:203        direct index ( temp highp uint)
0:203          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:203            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203              Constant:
0:203                1 (const int)
0:203            Constant:
0:203              2 (const int)
0:203          Constant:
0:203            0 (const int)
0:203        subgroupInclusiveOr ( global highp uint)
0:203          direct index ( temp highp uint)
0:203            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:203              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:203                Constant:
0:203                  0 (const int)
0:203              Constant:
0:203                2 (const int)
0:203            Constant:
0:203              0 (const int)
0:204      move second child to first child ( temp highp 2-component vector of uint)
0:204        vector swizzle ( temp highp 2-component vector of uint)
0:204          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:204            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204              Constant:
0:204                1 (const int)
0:204            Constant:
0:204              2 (const int)
0:204          Sequence
0:204            Constant:
0:204              0 (const int)
0:204            Constant:
0:204              1 (const int)
0:204        subgroupInclusiveOr ( global highp 2-component vector of uint)
0:204          vector swizzle ( temp highp 2-component vector of uint)
0:204            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:204              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:204                Constant:
0:204                  1 (const int)
0:204              Constant:
0:204                2 (const int)
0:204            Sequence
0:204              Constant:
0:204                0 (const int)
0:204              Constant:
0:204                1 (const int)
0:205      move second child to first child ( temp highp 3-component vector of uint)
0:205        vector swizzle ( temp highp 3-component vector of uint)
0:205          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:205            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205              Constant:
0:205                1 (const int)
0:205            Constant:
0:205              2 (const int)
0:205          Sequence
0:205            Constant:
0:205              0 (const int)
0:205            Constant:
0:205              1 (const int)
0:205            Constant:
0:205              2 (const int)
0:205        subgroupInclusiveOr ( global highp 3-component vector of uint)
0:205          vector swizzle ( temp highp 3-component vector of uint)
0:205            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:205              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:205                Constant:
0:205                  2 (const int)
0:205              Constant:
0:205                2 (const int)
0:205            Sequence
0:205              Constant:
0:205                0 (const int)
0:205              Constant:
0:205                1 (const int)
0:205              Constant:
0:205                2 (const int)
0:206      move second child to first child ( temp highp 4-component vector of uint)
0:206        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:206          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206            Constant:
0:206              1 (const int)
0:206          Constant:
0:206            2 (const int)
0:206        subgroupInclusiveOr ( global highp 4-component vector of uint)
0:206          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:206            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:206              Constant:
0:206                3 (const int)
0:206            Constant:
0:206              2 (const int)
0:208      move second child to first child ( temp highp int)
0:208        direct index ( temp highp int)
0:208          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:208            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208              Constant:
0:208                2 (const int)
0:208            Constant:
0:208              1 (const int)
0:208          Constant:
0:208            0 (const int)
0:208        Convert bool to int ( temp highp int)
0:208          subgroupInclusiveOr ( global bool)
0:208            Compare Less Than ( temp bool)
0:208              direct index ( temp highp int)
0:208                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:208                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:208                    Constant:
0:208                      0 (const int)
0:208                  Constant:
0:208                    1 (const int)
0:208                Constant:
0:208                  0 (const int)
0:208              Constant:
0:208                0 (const int)
0:209      move second child to first child ( temp highp 2-component vector of int)
0:209        vector swizzle ( temp highp 2-component vector of int)
0:209          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:209            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209              Constant:
0:209                2 (const int)
0:209            Constant:
0:209              1 (const int)
0:209          Sequence
0:209            Constant:
0:209              0 (const int)
0:209            Constant:
0:209              1 (const int)
0:209        Convert bool to int ( temp highp 2-component vector of int)
0:209          subgroupInclusiveOr ( global 2-component vector of bool)
0:209            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:209              vector swizzle ( temp highp 2-component vector of int)
0:209                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:209                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:209                    Constant:
0:209                      1 (const int)
0:209                  Constant:
0:209                    1 (const int)
0:209                Sequence
0:209                  Constant:
0:209                    0 (const int)
0:209                  Constant:
0:209                    1 (const int)
0:209              Constant:
0:209                0 (const int)
0:209                0 (const int)
0:210      move second child to first child ( temp highp 3-component vector of int)
0:210        vector swizzle ( temp highp 3-component vector of int)
0:210          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:210            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210              Constant:
0:210                2 (const int)
0:210            Constant:
0:210              1 (const int)
0:210          Sequence
0:210            Constant:
0:210              0 (const int)
0:210            Constant:
0:210              1 (const int)
0:210            Constant:
0:210              2 (const int)
0:210        Convert bool to int ( temp highp 3-component vector of int)
0:210          subgroupInclusiveOr ( global 3-component vector of bool)
0:210            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:210              vector swizzle ( temp highp 3-component vector of int)
0:210                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:210                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:210                    Constant:
0:210                      1 (const int)
0:210                  Constant:
0:210                    1 (const int)
0:210                Sequence
0:210                  Constant:
0:210                    0 (const int)
0:210                  Constant:
0:210                    1 (const int)
0:210                  Constant:
0:210                    2 (const int)
0:210              Constant:
0:210                0 (const int)
0:210                0 (const int)
0:210                0 (const int)
0:211      move second child to first child ( temp highp 4-component vector of int)
0:211        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:211          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211            Constant:
0:211              2 (const int)
0:211          Constant:
0:211            1 (const int)
0:211        Convert bool to int ( temp highp 4-component vector of int)
0:211          subgroupInclusiveOr ( global 4-component vector of bool)
0:211            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:211              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:211                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:211                  Constant:
0:211                    1 (const int)
0:211                Constant:
0:211                  1 (const int)
0:211              Constant:
0:211                0 (const int)
0:211                0 (const int)
0:211                0 (const int)
0:211                0 (const int)
0:213      move second child to first child ( temp highp int)
0:213        direct index ( temp highp int)
0:213          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:213            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213              Constant:
0:213                3 (const int)
0:213            Constant:
0:213              1 (const int)
0:213          Constant:
0:213            0 (const int)
0:213        subgroupInclusiveXor ( global highp int)
0:213          direct index ( temp highp int)
0:213            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:213              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:213                Constant:
0:213                  0 (const int)
0:213              Constant:
0:213                1 (const int)
0:213            Constant:
0:213              0 (const int)
0:214      move second child to first child ( temp highp 2-component vector of int)
0:214        vector swizzle ( temp highp 2-component vector of int)
0:214          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:214            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214              Constant:
0:214                3 (const int)
0:214            Constant:
0:214              1 (const int)
0:214          Sequence
0:214            Constant:
0:214              0 (const int)
0:214            Constant:
0:214              1 (const int)
0:214        subgroupInclusiveXor ( global highp 2-component vector of int)
0:214          vector swizzle ( temp highp 2-component vector of int)
0:214            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:214              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:214                Constant:
0:214                  1 (const int)
0:214              Constant:
0:214                1 (const int)
0:214            Sequence
0:214              Constant:
0:214                0 (const int)
0:214              Constant:
0:214                1 (const int)
0:215      move second child to first child ( temp highp 3-component vector of int)
0:215        vector swizzle ( temp highp 3-component vector of int)
0:215          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:215            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215              Constant:
0:215                3 (const int)
0:215            Constant:
0:215              1 (const int)
0:215          Sequence
0:215            Constant:
0:215              0 (const int)
0:215            Constant:
0:215              1 (const int)
0:215            Constant:
0:215              2 (const int)
0:215        subgroupInclusiveXor ( global highp 3-component vector of int)
0:215          vector swizzle ( temp highp 3-component vector of int)
0:215            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:215              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:215                Constant:
0:215                  2 (const int)
0:215              Constant:
0:215                1 (const int)
0:215            Sequence
0:215              Constant:
0:215                0 (const int)
0:215              Constant:
0:215                1 (const int)
0:215              Constant:
0:215                2 (const int)
0:216      move second child to first child ( temp highp 4-component vector of int)
0:216        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:216          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216            Constant:
0:216              3 (const int)
0:216          Constant:
0:216            1 (const int)
0:216        subgroupInclusiveXor ( global highp 4-component vector of int)
0:216          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:216            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:216              Constant:
0:216                3 (const int)
0:216            Constant:
0:216              1 (const int)
0:218      move second child to first child ( temp highp uint)
0:218        direct index ( temp highp uint)
0:218          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:218            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218              Constant:
0:218                0 (const int)
0:218            Constant:
0:218              2 (const int)
0:218          Constant:
0:218            0 (const int)
0:218        subgroupInclusiveXor ( global highp uint)
0:218          direct index ( temp highp uint)
0:218            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:218              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:218                Constant:
0:218                  0 (const int)
0:218              Constant:
0:218                2 (const int)
0:218            Constant:
0:218              0 (const int)
0:219      move second child to first child ( temp highp 2-component vector of uint)
0:219        vector swizzle ( temp highp 2-component vector of uint)
0:219          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:219            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219              Constant:
0:219                0 (const int)
0:219            Constant:
0:219              2 (const int)
0:219          Sequence
0:219            Constant:
0:219              0 (const int)
0:219            Constant:
0:219              1 (const int)
0:219        subgroupInclusiveXor ( global highp 2-component vector of uint)
0:219          vector swizzle ( temp highp 2-component vector of uint)
0:219            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:219              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:219                Constant:
0:219                  1 (const int)
0:219              Constant:
0:219                2 (const int)
0:219            Sequence
0:219              Constant:
0:219                0 (const int)
0:219              Constant:
0:219                1 (const int)
0:220      move second child to first child ( temp highp 3-component vector of uint)
0:220        vector swizzle ( temp highp 3-component vector of uint)
0:220          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:220            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220              Constant:
0:220                0 (const int)
0:220            Constant:
0:220              2 (const int)
0:220          Sequence
0:220            Constant:
0:220              0 (const int)
0:220            Constant:
0:220              1 (const int)
0:220            Constant:
0:220              2 (const int)
0:220        subgroupInclusiveXor ( global highp 3-component vector of uint)
0:220          vector swizzle ( temp highp 3-component vector of uint)
0:220            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:220              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:220                Constant:
0:220                  2 (const int)
0:220              Constant:
0:220                2 (const int)
0:220            Sequence
0:220              Constant:
0:220                0 (const int)
0:220              Constant:
0:220                1 (const int)
0:220              Constant:
0:220                2 (const int)
0:221      move second child to first child ( temp highp 4-component vector of uint)
0:221        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:221          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221            Constant:
0:221              0 (const int)
0:221          Constant:
0:221            2 (const int)
0:221        subgroupInclusiveXor ( global highp 4-component vector of uint)
0:221          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:221            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:221              Constant:
0:221                3 (const int)
0:221            Constant:
0:221              2 (const int)
0:223      move second child to first child ( temp highp int)
0:223        direct index ( temp highp int)
0:223          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:223            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223              Constant:
0:223                1 (const int)
0:223            Constant:
0:223              1 (const int)
0:223          Constant:
0:223            0 (const int)
0:223        Convert bool to int ( temp highp int)
0:223          subgroupInclusiveXor ( global bool)
0:223            Compare Less Than ( temp bool)
0:223              direct index ( temp highp int)
0:223                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:223                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:223                    Constant:
0:223                      0 (const int)
0:223                  Constant:
0:223                    1 (const int)
0:223                Constant:
0:223                  0 (const int)
0:223              Constant:
0:223                0 (const int)
0:224      move second child to first child ( temp highp 2-component vector of int)
0:224        vector swizzle ( temp highp 2-component vector of int)
0:224          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:224            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224              Constant:
0:224                1 (const int)
0:224            Constant:
0:224              1 (const int)
0:224          Sequence
0:224            Constant:
0:224              0 (const int)
0:224            Constant:
0:224              1 (const int)
0:224        Convert bool to int ( temp highp 2-component vector of int)
0:224          subgroupInclusiveXor ( global 2-component vector of bool)
0:224            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:224              vector swizzle ( temp highp 2-component vector of int)
0:224                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:224                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:224                    Constant:
0:224                      1 (const int)
0:224                  Constant:
0:224                    1 (const int)
0:224                Sequence
0:224                  Constant:
0:224                    0 (const int)
0:224                  Constant:
0:224                    1 (const int)
0:224              Constant:
0:224                0 (const int)
0:224                0 (const int)
0:225      move second child to first child ( temp highp 3-component vector of int)
0:225        vector swizzle ( temp highp 3-component vector of int)
0:225          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:225            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225              Constant:
0:225                1 (const int)
0:225            Constant:
0:225              1 (const int)
0:225          Sequence
0:225            Constant:
0:225              0 (const int)
0:225            Constant:
0:225              1 (const int)
0:225            Constant:
0:225              2 (const int)
0:225        Convert bool to int ( temp highp 3-component vector of int)
0:225          subgroupInclusiveXor ( global 3-component vector of bool)
0:225            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:225              vector swizzle ( temp highp 3-component vector of int)
0:225                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:225                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:225                    Constant:
0:225                      1 (const int)
0:225                  Constant:
0:225                    1 (const int)
0:225                Sequence
0:225                  Constant:
0:225                    0 (const int)
0:225                  Constant:
0:225                    1 (const int)
0:225                  Constant:
0:225                    2 (const int)
0:225              Constant:
0:225                0 (const int)
0:225                0 (const int)
0:225                0 (const int)
0:226      move second child to first child ( temp highp 4-component vector of int)
0:226        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:226          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226            Constant:
0:226              1 (const int)
0:226          Constant:
0:226            1 (const int)
0:226        Convert bool to int ( temp highp 4-component vector of int)
0:226          subgroupInclusiveXor ( global 4-component vector of bool)
0:226            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:226              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:226                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:226                  Constant:
0:226                    1 (const int)
0:226                Constant:
0:226                  1 (const int)
0:226              Constant:
0:226                0 (const int)
0:226                0 (const int)
0:226                0 (const int)
0:226                0 (const int)
0:228      move second child to first child ( temp highp float)
0:228        direct index ( temp highp float)
0:228          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:228            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228              Constant:
0:228                2 (const int)
0:228            Constant:
0:228              0 (const int)
0:228          Constant:
0:228            0 (const int)
0:228        subgroupExclusiveAdd ( global highp float)
0:228          direct index ( temp highp float)
0:228            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:228              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:228                Constant:
0:228                  0 (const int)
0:228              Constant:
0:228                0 (const int)
0:228            Constant:
0:228              0 (const int)
0:229      move second child to first child ( temp highp 2-component vector of float)
0:229        vector swizzle ( temp highp 2-component vector of float)
0:229          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:229            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229              Constant:
0:229                2 (const int)
0:229            Constant:
0:229              0 (const int)
0:229          Sequence
0:229            Constant:
0:229              0 (const int)
0:229            Constant:
0:229              1 (const int)
0:229        subgroupExclusiveAdd ( global highp 2-component vector of float)
0:229          vector swizzle ( temp highp 2-component vector of float)
0:229            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:229              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:229                Constant:
0:229                  1 (const int)
0:229              Constant:
0:229                0 (const int)
0:229            Sequence
0:229              Constant:
0:229                0 (const int)
0:229              Constant:
0:229                1 (const int)
0:230      move second child to first child ( temp highp 3-component vector of float)
0:230        vector swizzle ( temp highp 3-component vector of float)
0:230          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:230            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230              Constant:
0:230                2 (const int)
0:230            Constant:
0:230              0 (const int)
0:230          Sequence
0:230            Constant:
0:230              0 (const int)
0:230            Constant:
0:230              1 (const int)
0:230            Constant:
0:230              2 (const int)
0:230        subgroupExclusiveAdd ( global highp 3-component vector of float)
0:230          vector swizzle ( temp highp 3-component vector of float)
0:230            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:230              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:230                Constant:
0:230                  2 (const int)
0:230              Constant:
0:230                0 (const int)
0:230            Sequence
0:230              Constant:
0:230                0 (const int)
0:230              Constant:
0:230                1 (const int)
0:230              Constant:
0:230                2 (const int)
0:231      move second child to first child ( temp highp 4-component vector of float)
0:231        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:231          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231            Constant:
0:231              2 (const int)
0:231          Constant:
0:231            0 (const int)
0:231        subgroupExclusiveAdd ( global highp 4-component vector of float)
0:231          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:231            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:231              Constant:
0:231                3 (const int)
0:231            Constant:
0:231              0 (const int)
0:233      move second child to first child ( temp highp int)
0:233        direct index ( temp highp int)
0:233          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:233            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233              Constant:
0:233                3 (const int)
0:233            Constant:
0:233              1 (const int)
0:233          Constant:
0:233            0 (const int)
0:233        subgroupExclusiveAdd ( global highp int)
0:233          direct index ( temp highp int)
0:233            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:233              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:233                Constant:
0:233                  0 (const int)
0:233              Constant:
0:233                1 (const int)
0:233            Constant:
0:233              0 (const int)
0:234      move second child to first child ( temp highp 2-component vector of int)
0:234        vector swizzle ( temp highp 2-component vector of int)
0:234          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:234            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234              Constant:
0:234                3 (const int)
0:234            Constant:
0:234              1 (const int)
0:234          Sequence
0:234            Constant:
0:234              0 (const int)
0:234            Constant:
0:234              1 (const int)
0:234        subgroupExclusiveAdd ( global highp 2-component vector of int)
0:234          vector swizzle ( temp highp 2-component vector of int)
0:234            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:234              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:234                Constant:
0:234                  1 (const int)
0:234              Constant:
0:234                1 (const int)
0:234            Sequence
0:234              Constant:
0:234                0 (const int)
0:234              Constant:
0:234                1 (const int)
0:235      move second child to first child ( temp highp 3-component vector of int)
0:235        vector swizzle ( temp highp 3-component vector of int)
0:235          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:235            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235              Constant:
0:235                3 (const int)
0:235            Constant:
0:235              1 (const int)
0:235          Sequence
0:235            Constant:
0:235              0 (const int)
0:235            Constant:
0:235              1 (const int)
0:235            Constant:
0:235              2 (const int)
0:235        subgroupExclusiveAdd ( global highp 3-component vector of int)
0:235          vector swizzle ( temp highp 3-component vector of int)
0:235            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:235              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:235                Constant:
0:235                  2 (const int)
0:235              Constant:
0:235                1 (const int)
0:235            Sequence
0:235              Constant:
0:235                0 (const int)
0:235              Constant:
0:235                1 (const int)
0:235              Constant:
0:235                2 (const int)
0:236      move second child to first child ( temp highp 4-component vector of int)
0:236        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:236          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236            Constant:
0:236              3 (const int)
0:236          Constant:
0:236            1 (const int)
0:236        subgroupExclusiveAdd ( global highp 4-component vector of int)
0:236          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:236            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:236              Constant:
0:236                3 (const int)
0:236            Constant:
0:236              1 (const int)
0:238      move second child to first child ( temp highp uint)
0:238        direct index ( temp highp uint)
0:238          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:238            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238              Constant:
0:238                0 (const int)
0:238            Constant:
0:238              2 (const int)
0:238          Constant:
0:238            0 (const int)
0:238        subgroupExclusiveAdd ( global highp uint)
0:238          direct index ( temp highp uint)
0:238            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:238              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:238                Constant:
0:238                  0 (const int)
0:238              Constant:
0:238                2 (const int)
0:238            Constant:
0:238              0 (const int)
0:239      move second child to first child ( temp highp 2-component vector of uint)
0:239        vector swizzle ( temp highp 2-component vector of uint)
0:239          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:239            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239              Constant:
0:239                0 (const int)
0:239            Constant:
0:239              2 (const int)
0:239          Sequence
0:239            Constant:
0:239              0 (const int)
0:239            Constant:
0:239              1 (const int)
0:239        subgroupExclusiveAdd ( global highp 2-component vector of uint)
0:239          vector swizzle ( temp highp 2-component vector of uint)
0:239            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:239              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:239                Constant:
0:239                  1 (const int)
0:239              Constant:
0:239                2 (const int)
0:239            Sequence
0:239              Constant:
0:239                0 (const int)
0:239              Constant:
0:239                1 (const int)
0:240      move second child to first child ( temp highp 3-component vector of uint)
0:240        vector swizzle ( temp highp 3-component vector of uint)
0:240          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:240            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240              Constant:
0:240                0 (const int)
0:240            Constant:
0:240              2 (const int)
0:240          Sequence
0:240            Constant:
0:240              0 (const int)
0:240            Constant:
0:240              1 (const int)
0:240            Constant:
0:240              2 (const int)
0:240        subgroupExclusiveAdd ( global highp 3-component vector of uint)
0:240          vector swizzle ( temp highp 3-component vector of uint)
0:240            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:240              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:240                Constant:
0:240                  2 (const int)
0:240              Constant:
0:240                2 (const int)
0:240            Sequence
0:240              Constant:
0:240                0 (const int)
0:240              Constant:
0:240                1 (const int)
0:240              Constant:
0:240                2 (const int)
0:241      move second child to first child ( temp highp 4-component vector of uint)
0:241        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:241          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241            Constant:
0:241              0 (const int)
0:241          Constant:
0:241            2 (const int)
0:241        subgroupExclusiveAdd ( global highp 4-component vector of uint)
0:241          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:241            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:241              Constant:
0:241                3 (const int)
0:241            Constant:
0:241              2 (const int)
0:243      move second child to first child ( temp highp float)
0:243        direct index ( temp highp float)
0:243          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:243            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243              Constant:
0:243                1 (const int)
0:243            Constant:
0:243              0 (const int)
0:243          Constant:
0:243            0 (const int)
0:243        subgroupExclusiveMul ( global highp float)
0:243          direct index ( temp highp float)
0:243            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:243              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:243                Constant:
0:243                  0 (const int)
0:243              Constant:
0:243                0 (const int)
0:243            Constant:
0:243              0 (const int)
0:244      move second child to first child ( temp highp 2-component vector of float)
0:244        vector swizzle ( temp highp 2-component vector of float)
0:244          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:244            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244              Constant:
0:244                1 (const int)
0:244            Constant:
0:244              0 (const int)
0:244          Sequence
0:244            Constant:
0:244              0 (const int)
0:244            Constant:
0:244              1 (const int)
0:244        subgroupExclusiveMul ( global highp 2-component vector of float)
0:244          vector swizzle ( temp highp 2-component vector of float)
0:244            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:244              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:244                Constant:
0:244                  1 (const int)
0:244              Constant:
0:244                0 (const int)
0:244            Sequence
0:244              Constant:
0:244                0 (const int)
0:244              Constant:
0:244                1 (const int)
0:245      move second child to first child ( temp highp 3-component vector of float)
0:245        vector swizzle ( temp highp 3-component vector of float)
0:245          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:245            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245              Constant:
0:245                1 (const int)
0:245            Constant:
0:245              0 (const int)
0:245          Sequence
0:245            Constant:
0:245              0 (const int)
0:245            Constant:
0:245              1 (const int)
0:245            Constant:
0:245              2 (const int)
0:245        subgroupExclusiveMul ( global highp 3-component vector of float)
0:245          vector swizzle ( temp highp 3-component vector of float)
0:245            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:245              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:245                Constant:
0:245                  2 (const int)
0:245              Constant:
0:245                0 (const int)
0:245            Sequence
0:245              Constant:
0:245                0 (const int)
0:245              Constant:
0:245                1 (const int)
0:245              Constant:
0:245                2 (const int)
0:246      move second child to first child ( temp highp 4-component vector of float)
0:246        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:246          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246            Constant:
0:246              1 (const int)
0:246          Constant:
0:246            0 (const int)
0:246        subgroupExclusiveMul ( global highp 4-component vector of float)
0:246          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:246            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:246              Constant:
0:246                3 (const int)
0:246            Constant:
0:246              0 (const int)
0:248      move second child to first child ( temp highp int)
0:248        direct index ( temp highp int)
0:248          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:248            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248              Constant:
0:248                2 (const int)
0:248            Constant:
0:248              1 (const int)
0:248          Constant:
0:248            0 (const int)
0:248        subgroupExclusiveMul ( global highp int)
0:248          direct index ( temp highp int)
0:248            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:248              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:248                Constant:
0:248                  0 (const int)
0:248              Constant:
0:248                1 (const int)
0:248            Constant:
0:248              0 (const int)
0:249      move second child to first child ( temp highp 2-component vector of int)
0:249        vector swizzle ( temp highp 2-component vector of int)
0:249          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:249            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249              Constant:
0:249                2 (const int)
0:249            Constant:
0:249              1 (const int)
0:249          Sequence
0:249            Constant:
0:249              0 (const int)
0:249            Constant:
0:249              1 (const int)
0:249        subgroupExclusiveMul ( global highp 2-component vector of int)
0:249          vector swizzle ( temp highp 2-component vector of int)
0:249            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:249              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:249                Constant:
0:249                  1 (const int)
0:249              Constant:
0:249                1 (const int)
0:249            Sequence
0:249              Constant:
0:249                0 (const int)
0:249              Constant:
0:249                1 (const int)
0:250      move second child to first child ( temp highp 3-component vector of int)
0:250        vector swizzle ( temp highp 3-component vector of int)
0:250          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:250            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250              Constant:
0:250                2 (const int)
0:250            Constant:
0:250              1 (const int)
0:250          Sequence
0:250            Constant:
0:250              0 (const int)
0:250            Constant:
0:250              1 (const int)
0:250            Constant:
0:250              2 (const int)
0:250        subgroupExclusiveMul ( global highp 3-component vector of int)
0:250          vector swizzle ( temp highp 3-component vector of int)
0:250            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:250              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:250                Constant:
0:250                  2 (const int)
0:250              Constant:
0:250                1 (const int)
0:250            Sequence
0:250              Constant:
0:250                0 (const int)
0:250              Constant:
0:250                1 (const int)
0:250              Constant:
0:250                2 (const int)
0:251      move second child to first child ( temp highp 4-component vector of int)
0:251        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:251          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251            Constant:
0:251              2 (const int)
0:251          Constant:
0:251            1 (const int)
0:251        subgroupExclusiveMul ( global highp 4-component vector of int)
0:251          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:251            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:251              Constant:
0:251                3 (const int)
0:251            Constant:
0:251              1 (const int)
0:253      move second child to first child ( temp highp uint)
0:253        direct index ( temp highp uint)
0:253          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:253            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253              Constant:
0:253                3 (const int)
0:253            Constant:
0:253              2 (const int)
0:253          Constant:
0:253            0 (const int)
0:253        subgroupExclusiveMul ( global highp uint)
0:253          direct index ( temp highp uint)
0:253            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:253              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:253                Constant:
0:253                  0 (const int)
0:253              Constant:
0:253                2 (const int)
0:253            Constant:
0:253              0 (const int)
0:254      move second child to first child ( temp highp 2-component vector of uint)
0:254        vector swizzle ( temp highp 2-component vector of uint)
0:254          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:254            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254              Constant:
0:254                3 (const int)
0:254            Constant:
0:254              2 (const int)
0:254          Sequence
0:254            Constant:
0:254              0 (const int)
0:254            Constant:
0:254              1 (const int)
0:254        subgroupExclusiveMul ( global highp 2-component vector of uint)
0:254          vector swizzle ( temp highp 2-component vector of uint)
0:254            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:254              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:254                Constant:
0:254                  1 (const int)
0:254              Constant:
0:254                2 (const int)
0:254            Sequence
0:254              Constant:
0:254                0 (const int)
0:254              Constant:
0:254                1 (const int)
0:255      move second child to first child ( temp highp 3-component vector of uint)
0:255        vector swizzle ( temp highp 3-component vector of uint)
0:255          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:255            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255              Constant:
0:255                3 (const int)
0:255            Constant:
0:255              2 (const int)
0:255          Sequence
0:255            Constant:
0:255              0 (const int)
0:255            Constant:
0:255              1 (const int)
0:255            Constant:
0:255              2 (const int)
0:255        subgroupExclusiveMul ( global highp 3-component vector of uint)
0:255          vector swizzle ( temp highp 3-component vector of uint)
0:255            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:255              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:255                Constant:
0:255                  2 (const int)
0:255              Constant:
0:255                2 (const int)
0:255            Sequence
0:255              Constant:
0:255                0 (const int)
0:255              Constant:
0:255                1 (const int)
0:255              Constant:
0:255                2 (const int)
0:256      move second child to first child ( temp highp 4-component vector of uint)
0:256        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:256          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256            Constant:
0:256              3 (const int)
0:256          Constant:
0:256            2 (const int)
0:256        subgroupExclusiveMul ( global highp 4-component vector of uint)
0:256          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:256            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:256              Constant:
0:256                3 (const int)
0:256            Constant:
0:256              2 (const int)
0:258      move second child to first child ( temp highp float)
0:258        direct index ( temp highp float)
0:258          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:258            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258              Constant:
0:258                0 (const int)
0:258            Constant:
0:258              0 (const int)
0:258          Constant:
0:258            0 (const int)
0:258        subgroupExclusiveMin ( global highp float)
0:258          direct index ( temp highp float)
0:258            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:258              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:258                Constant:
0:258                  0 (const int)
0:258              Constant:
0:258                0 (const int)
0:258            Constant:
0:258              0 (const int)
0:259      move second child to first child ( temp highp 2-component vector of float)
0:259        vector swizzle ( temp highp 2-component vector of float)
0:259          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:259            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259              Constant:
0:259                0 (const int)
0:259            Constant:
0:259              0 (const int)
0:259          Sequence
0:259            Constant:
0:259              0 (const int)
0:259            Constant:
0:259              1 (const int)
0:259        subgroupExclusiveMin ( global highp 2-component vector of float)
0:259          vector swizzle ( temp highp 2-component vector of float)
0:259            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:259              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:259                Constant:
0:259                  1 (const int)
0:259              Constant:
0:259                0 (const int)
0:259            Sequence
0:259              Constant:
0:259                0 (const int)
0:259              Constant:
0:259                1 (const int)
0:260      move second child to first child ( temp highp 3-component vector of float)
0:260        vector swizzle ( temp highp 3-component vector of float)
0:260          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:260            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260              Constant:
0:260                0 (const int)
0:260            Constant:
0:260              0 (const int)
0:260          Sequence
0:260            Constant:
0:260              0 (const int)
0:260            Constant:
0:260              1 (const int)
0:260            Constant:
0:260              2 (const int)
0:260        subgroupExclusiveMin ( global highp 3-component vector of float)
0:260          vector swizzle ( temp highp 3-component vector of float)
0:260            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:260              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:260                Constant:
0:260                  2 (const int)
0:260              Constant:
0:260                0 (const int)
0:260            Sequence
0:260              Constant:
0:260                0 (const int)
0:260              Constant:
0:260                1 (const int)
0:260              Constant:
0:260                2 (const int)
0:261      move second child to first child ( temp highp 4-component vector of float)
0:261        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:261          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261            Constant:
0:261              0 (const int)
0:261          Constant:
0:261            0 (const int)
0:261        subgroupExclusiveMin ( global highp 4-component vector of float)
0:261          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:261            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:261              Constant:
0:261                3 (const int)
0:261            Constant:
0:261              0 (const int)
0:263      move second child to first child ( temp highp int)
0:263        direct index ( temp highp int)
0:263          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:263            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263              Constant:
0:263                1 (const int)
0:263            Constant:
0:263              1 (const int)
0:263          Constant:
0:263            0 (const int)
0:263        subgroupExclusiveMin ( global highp int)
0:263          direct index ( temp highp int)
0:263            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:263              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:263                Constant:
0:263                  0 (const int)
0:263              Constant:
0:263                1 (const int)
0:263            Constant:
0:263              0 (const int)
0:264      move second child to first child ( temp highp 2-component vector of int)
0:264        vector swizzle ( temp highp 2-component vector of int)
0:264          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:264            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264              Constant:
0:264                1 (const int)
0:264            Constant:
0:264              1 (const int)
0:264          Sequence
0:264            Constant:
0:264              0 (const int)
0:264            Constant:
0:264              1 (const int)
0:264        subgroupExclusiveMin ( global highp 2-component vector of int)
0:264          vector swizzle ( temp highp 2-component vector of int)
0:264            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:264              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:264                Constant:
0:264                  1 (const int)
0:264              Constant:
0:264                1 (const int)
0:264            Sequence
0:264              Constant:
0:264                0 (const int)
0:264              Constant:
0:264                1 (const int)
0:265      move second child to first child ( temp highp 3-component vector of int)
0:265        vector swizzle ( temp highp 3-component vector of int)
0:265          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:265            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265              Constant:
0:265                1 (const int)
0:265            Constant:
0:265              1 (const int)
0:265          Sequence
0:265            Constant:
0:265              0 (const int)
0:265            Constant:
0:265              1 (const int)
0:265            Constant:
0:265              2 (const int)
0:265        subgroupExclusiveMin ( global highp 3-component vector of int)
0:265          vector swizzle ( temp highp 3-component vector of int)
0:265            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:265              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:265                Constant:
0:265                  2 (const int)
0:265              Constant:
0:265                1 (const int)
0:265            Sequence
0:265              Constant:
0:265                0 (const int)
0:265              Constant:
0:265                1 (const int)
0:265              Constant:
0:265                2 (const int)
0:266      move second child to first child ( temp highp 4-component vector of int)
0:266        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:266          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266            Constant:
0:266              1 (const int)
0:266          Constant:
0:266            1 (const int)
0:266        subgroupExclusiveMin ( global highp 4-component vector of int)
0:266          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:266            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:266              Constant:
0:266                3 (const int)
0:266            Constant:
0:266              1 (const int)
0:268      move second child to first child ( temp highp uint)
0:268        direct index ( temp highp uint)
0:268          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:268            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268              Constant:
0:268                2 (const int)
0:268            Constant:
0:268              2 (const int)
0:268          Constant:
0:268            0 (const int)
0:268        subgroupExclusiveMin ( global highp uint)
0:268          direct index ( temp highp uint)
0:268            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:268              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:268                Constant:
0:268                  0 (const int)
0:268              Constant:
0:268                2 (const int)
0:268            Constant:
0:268              0 (const int)
0:269      move second child to first child ( temp highp 2-component vector of uint)
0:269        vector swizzle ( temp highp 2-component vector of uint)
0:269          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:269            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269              Constant:
0:269                2 (const int)
0:269            Constant:
0:269              2 (const int)
0:269          Sequence
0:269            Constant:
0:269              0 (const int)
0:269            Constant:
0:269              1 (const int)
0:269        subgroupExclusiveMin ( global highp 2-component vector of uint)
0:269          vector swizzle ( temp highp 2-component vector of uint)
0:269            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:269              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:269                Constant:
0:269                  1 (const int)
0:269              Constant:
0:269                2 (const int)
0:269            Sequence
0:269              Constant:
0:269                0 (const int)
0:269              Constant:
0:269                1 (const int)
0:270      move second child to first child ( temp highp 3-component vector of uint)
0:270        vector swizzle ( temp highp 3-component vector of uint)
0:270          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:270            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270              Constant:
0:270                2 (const int)
0:270            Constant:
0:270              2 (const int)
0:270          Sequence
0:270            Constant:
0:270              0 (const int)
0:270            Constant:
0:270              1 (const int)
0:270            Constant:
0:270              2 (const int)
0:270        subgroupExclusiveMin ( global highp 3-component vector of uint)
0:270          vector swizzle ( temp highp 3-component vector of uint)
0:270            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:270              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:270                Constant:
0:270                  2 (const int)
0:270              Constant:
0:270                2 (const int)
0:270            Sequence
0:270              Constant:
0:270                0 (const int)
0:270              Constant:
0:270                1 (const int)
0:270              Constant:
0:270                2 (const int)
0:271      move second child to first child ( temp highp 4-component vector of uint)
0:271        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:271          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271            Constant:
0:271              2 (const int)
0:271          Constant:
0:271            2 (const int)
0:271        subgroupExclusiveMin ( global highp 4-component vector of uint)
0:271          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:271            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:271              Constant:
0:271                3 (const int)
0:271            Constant:
0:271              2 (const int)
0:273      move second child to first child ( temp highp float)
0:273        direct index ( temp highp float)
0:273          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:273            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273              Constant:
0:273                3 (const int)
0:273            Constant:
0:273              0 (const int)
0:273          Constant:
0:273            0 (const int)
0:273        subgroupExclusiveMax ( global highp float)
0:273          direct index ( temp highp float)
0:273            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:273              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:273                Constant:
0:273                  0 (const int)
0:273              Constant:
0:273                0 (const int)
0:273            Constant:
0:273              0 (const int)
0:274      move second child to first child ( temp highp 2-component vector of float)
0:274        vector swizzle ( temp highp 2-component vector of float)
0:274          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:274            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274              Constant:
0:274                3 (const int)
0:274            Constant:
0:274              0 (const int)
0:274          Sequence
0:274            Constant:
0:274              0 (const int)
0:274            Constant:
0:274              1 (const int)
0:274        subgroupExclusiveMax ( global highp 2-component vector of float)
0:274          vector swizzle ( temp highp 2-component vector of float)
0:274            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:274              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:274                Constant:
0:274                  1 (const int)
0:274              Constant:
0:274                0 (const int)
0:274            Sequence
0:274              Constant:
0:274                0 (const int)
0:274              Constant:
0:274                1 (const int)
0:275      move second child to first child ( temp highp 3-component vector of float)
0:275        vector swizzle ( temp highp 3-component vector of float)
0:275          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:275            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275              Constant:
0:275                3 (const int)
0:275            Constant:
0:275              0 (const int)
0:275          Sequence
0:275            Constant:
0:275              0 (const int)
0:275            Constant:
0:275              1 (const int)
0:275            Constant:
0:275              2 (const int)
0:275        subgroupExclusiveMax ( global highp 3-component vector of float)
0:275          vector swizzle ( temp highp 3-component vector of float)
0:275            f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:275              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:275                Constant:
0:275                  2 (const int)
0:275              Constant:
0:275                0 (const int)
0:275            Sequence
0:275              Constant:
0:275                0 (const int)
0:275              Constant:
0:275                1 (const int)
0:275              Constant:
0:275                2 (const int)
0:276      move second child to first child ( temp highp 4-component vector of float)
0:276        f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:276          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276            Constant:
0:276              3 (const int)
0:276          Constant:
0:276            0 (const int)
0:276        subgroupExclusiveMax ( global highp 4-component vector of float)
0:276          f4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of float)
0:276            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:276              Constant:
0:276                3 (const int)
0:276            Constant:
0:276              0 (const int)
0:278      move second child to first child ( temp highp int)
0:278        direct index ( temp highp int)
0:278          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:278            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278              Constant:
0:278                0 (const int)
0:278            Constant:
0:278              1 (const int)
0:278          Constant:
0:278            0 (const int)
0:278        subgroupExclusiveMax ( global highp int)
0:278          direct index ( temp highp int)
0:278            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:278              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:278                Constant:
0:278                  0 (const int)
0:278              Constant:
0:278                1 (const int)
0:278            Constant:
0:278              0 (const int)
0:279      move second child to first child ( temp highp 2-component vector of int)
0:279        vector swizzle ( temp highp 2-component vector of int)
0:279          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:279            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279              Constant:
0:279                0 (const int)
0:279            Constant:
0:279              1 (const int)
0:279          Sequence
0:279            Constant:
0:279              0 (const int)
0:279            Constant:
0:279              1 (const int)
0:279        subgroupExclusiveMax ( global highp 2-component vector of int)
0:279          vector swizzle ( temp highp 2-component vector of int)
0:279            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:279              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:279                Constant:
0:279                  1 (const int)
0:279              Constant:
0:279                1 (const int)
0:279            Sequence
0:279              Constant:
0:279                0 (const int)
0:279              Constant:
0:279                1 (const int)
0:280      move second child to first child ( temp highp 3-component vector of int)
0:280        vector swizzle ( temp highp 3-component vector of int)
0:280          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:280            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280              Constant:
0:280                0 (const int)
0:280            Constant:
0:280              1 (const int)
0:280          Sequence
0:280            Constant:
0:280              0 (const int)
0:280            Constant:
0:280              1 (const int)
0:280            Constant:
0:280              2 (const int)
0:280        subgroupExclusiveMax ( global highp 3-component vector of int)
0:280          vector swizzle ( temp highp 3-component vector of int)
0:280            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:280              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:280                Constant:
0:280                  2 (const int)
0:280              Constant:
0:280                1 (const int)
0:280            Sequence
0:280              Constant:
0:280                0 (const int)
0:280              Constant:
0:280                1 (const int)
0:280              Constant:
0:280                2 (const int)
0:281      move second child to first child ( temp highp 4-component vector of int)
0:281        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:281          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281            Constant:
0:281              0 (const int)
0:281          Constant:
0:281            1 (const int)
0:281        subgroupExclusiveMax ( global highp 4-component vector of int)
0:281          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:281            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:281              Constant:
0:281                3 (const int)
0:281            Constant:
0:281              1 (const int)
0:283      move second child to first child ( temp highp uint)
0:283        direct index ( temp highp uint)
0:283          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:283            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283              Constant:
0:283                1 (const int)
0:283            Constant:
0:283              2 (const int)
0:283          Constant:
0:283            0 (const int)
0:283        subgroupExclusiveMax ( global highp uint)
0:283          direct index ( temp highp uint)
0:283            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:283              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:283                Constant:
0:283                  0 (const int)
0:283              Constant:
0:283                2 (const int)
0:283            Constant:
0:283              0 (const int)
0:284      move second child to first child ( temp highp 2-component vector of uint)
0:284        vector swizzle ( temp highp 2-component vector of uint)
0:284          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:284            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284              Constant:
0:284                1 (const int)
0:284            Constant:
0:284              2 (const int)
0:284          Sequence
0:284            Constant:
0:284              0 (const int)
0:284            Constant:
0:284              1 (const int)
0:284        subgroupExclusiveMax ( global highp 2-component vector of uint)
0:284          vector swizzle ( temp highp 2-component vector of uint)
0:284            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:284              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:284                Constant:
0:284                  1 (const int)
0:284              Constant:
0:284                2 (const int)
0:284            Sequence
0:284              Constant:
0:284                0 (const int)
0:284              Constant:
0:284                1 (const int)
0:285      move second child to first child ( temp highp 3-component vector of uint)
0:285        vector swizzle ( temp highp 3-component vector of uint)
0:285          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:285            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285              Constant:
0:285                1 (const int)
0:285            Constant:
0:285              2 (const int)
0:285          Sequence
0:285            Constant:
0:285              0 (const int)
0:285            Constant:
0:285              1 (const int)
0:285            Constant:
0:285              2 (const int)
0:285        subgroupExclusiveMax ( global highp 3-component vector of uint)
0:285          vector swizzle ( temp highp 3-component vector of uint)
0:285            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:285              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:285                Constant:
0:285                  2 (const int)
0:285              Constant:
0:285                2 (const int)
0:285            Sequence
0:285              Constant:
0:285                0 (const int)
0:285              Constant:
0:285                1 (const int)
0:285              Constant:
0:285                2 (const int)
0:286      move second child to first child ( temp highp 4-component vector of uint)
0:286        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:286          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286            Constant:
0:286              1 (const int)
0:286          Constant:
0:286            2 (const int)
0:286        subgroupExclusiveMax ( global highp 4-component vector of uint)
0:286          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:286            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:286              Constant:
0:286                3 (const int)
0:286            Constant:
0:286              2 (const int)
0:288      move second child to first child ( temp highp int)
0:288        direct index ( temp highp int)
0:288          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:288            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288              Constant:
0:288                2 (const int)
0:288            Constant:
0:288              1 (const int)
0:288          Constant:
0:288            0 (const int)
0:288        subgroupExclusiveAnd ( global highp int)
0:288          direct index ( temp highp int)
0:288            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:288              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:288                Constant:
0:288                  0 (const int)
0:288              Constant:
0:288                1 (const int)
0:288            Constant:
0:288              0 (const int)
0:289      move second child to first child ( temp highp 2-component vector of int)
0:289        vector swizzle ( temp highp 2-component vector of int)
0:289          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:289            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289              Constant:
0:289                2 (const int)
0:289            Constant:
0:289              1 (const int)
0:289          Sequence
0:289            Constant:
0:289              0 (const int)
0:289            Constant:
0:289              1 (const int)
0:289        subgroupExclusiveAnd ( global highp 2-component vector of int)
0:289          vector swizzle ( temp highp 2-component vector of int)
0:289            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:289              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:289                Constant:
0:289                  1 (const int)
0:289              Constant:
0:289                1 (const int)
0:289            Sequence
0:289              Constant:
0:289                0 (const int)
0:289              Constant:
0:289                1 (const int)
0:290      move second child to first child ( temp highp 3-component vector of int)
0:290        vector swizzle ( temp highp 3-component vector of int)
0:290          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:290            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290              Constant:
0:290                2 (const int)
0:290            Constant:
0:290              1 (const int)
0:290          Sequence
0:290            Constant:
0:290              0 (const int)
0:290            Constant:
0:290              1 (const int)
0:290            Constant:
0:290              2 (const int)
0:290        subgroupExclusiveAnd ( global highp 3-component vector of int)
0:290          vector swizzle ( temp highp 3-component vector of int)
0:290            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:290              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:290                Constant:
0:290                  2 (const int)
0:290              Constant:
0:290                1 (const int)
0:290            Sequence
0:290              Constant:
0:290                0 (const int)
0:290              Constant:
0:290                1 (const int)
0:290              Constant:
0:290                2 (const int)
0:291      move second child to first child ( temp highp 4-component vector of int)
0:291        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:291          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291            Constant:
0:291              2 (const int)
0:291          Constant:
0:291            1 (const int)
0:291        subgroupExclusiveAnd ( global highp 4-component vector of int)
0:291          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:291            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:291              Constant:
0:291                3 (const int)
0:291            Constant:
0:291              1 (const int)
0:293      move second child to first child ( temp highp uint)
0:293        direct index ( temp highp uint)
0:293          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:293            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293              Constant:
0:293                3 (const int)
0:293            Constant:
0:293              2 (const int)
0:293          Constant:
0:293            0 (const int)
0:293        subgroupExclusiveAnd ( global highp uint)
0:293          direct index ( temp highp uint)
0:293            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:293              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:293                Constant:
0:293                  0 (const int)
0:293              Constant:
0:293                2 (const int)
0:293            Constant:
0:293              0 (const int)
0:294      move second child to first child ( temp highp 2-component vector of uint)
0:294        vector swizzle ( temp highp 2-component vector of uint)
0:294          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:294            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294              Constant:
0:294                3 (const int)
0:294            Constant:
0:294              2 (const int)
0:294          Sequence
0:294            Constant:
0:294              0 (const int)
0:294            Constant:
0:294              1 (const int)
0:294        subgroupExclusiveAnd ( global highp 2-component vector of uint)
0:294          vector swizzle ( temp highp 2-component vector of uint)
0:294            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:294              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:294                Constant:
0:294                  1 (const int)
0:294              Constant:
0:294                2 (const int)
0:294            Sequence
0:294              Constant:
0:294                0 (const int)
0:294              Constant:
0:294                1 (const int)
0:295      move second child to first child ( temp highp 3-component vector of uint)
0:295        vector swizzle ( temp highp 3-component vector of uint)
0:295          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:295            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295              Constant:
0:295                3 (const int)
0:295            Constant:
0:295              2 (const int)
0:295          Sequence
0:295            Constant:
0:295              0 (const int)
0:295            Constant:
0:295              1 (const int)
0:295            Constant:
0:295              2 (const int)
0:295        subgroupExclusiveAnd ( global highp 3-component vector of uint)
0:295          vector swizzle ( temp highp 3-component vector of uint)
0:295            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:295              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:295                Constant:
0:295                  2 (const int)
0:295              Constant:
0:295                2 (const int)
0:295            Sequence
0:295              Constant:
0:295                0 (const int)
0:295              Constant:
0:295                1 (const int)
0:295              Constant:
0:295                2 (const int)
0:296      move second child to first child ( temp highp 4-component vector of uint)
0:296        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:296          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296            Constant:
0:296              3 (const int)
0:296          Constant:
0:296            2 (const int)
0:296        subgroupExclusiveAnd ( global highp 4-component vector of uint)
0:296          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:296            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:296              Constant:
0:296                3 (const int)
0:296            Constant:
0:296              2 (const int)
0:298      move second child to first child ( temp highp int)
0:298        direct index ( temp highp int)
0:298          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:298            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298              Constant:
0:298                0 (const int)
0:298            Constant:
0:298              1 (const int)
0:298          Constant:
0:298            0 (const int)
0:298        Convert bool to int ( temp highp int)
0:298          subgroupExclusiveAnd ( global bool)
0:298            Compare Less Than ( temp bool)
0:298              direct index ( temp highp int)
0:298                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:298                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:298                    Constant:
0:298                      0 (const int)
0:298                  Constant:
0:298                    1 (const int)
0:298                Constant:
0:298                  0 (const int)
0:298              Constant:
0:298                0 (const int)
0:299      move second child to first child ( temp highp 2-component vector of int)
0:299        vector swizzle ( temp highp 2-component vector of int)
0:299          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:299            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299              Constant:
0:299                0 (const int)
0:299            Constant:
0:299              1 (const int)
0:299          Sequence
0:299            Constant:
0:299              0 (const int)
0:299            Constant:
0:299              1 (const int)
0:299        Convert bool to int ( temp highp 2-component vector of int)
0:299          subgroupExclusiveAnd ( global 2-component vector of bool)
0:299            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:299              vector swizzle ( temp highp 2-component vector of int)
0:299                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:299                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:299                    Constant:
0:299                      1 (const int)
0:299                  Constant:
0:299                    1 (const int)
0:299                Sequence
0:299                  Constant:
0:299                    0 (const int)
0:299                  Constant:
0:299                    1 (const int)
0:299              Constant:
0:299                0 (const int)
0:299                0 (const int)
0:300      move second child to first child ( temp highp 3-component vector of int)
0:300        vector swizzle ( temp highp 3-component vector of int)
0:300          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:300            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300              Constant:
0:300                0 (const int)
0:300            Constant:
0:300              1 (const int)
0:300          Sequence
0:300            Constant:
0:300              0 (const int)
0:300            Constant:
0:300              1 (const int)
0:300            Constant:
0:300              2 (const int)
0:300        Convert bool to int ( temp highp 3-component vector of int)
0:300          subgroupExclusiveAnd ( global 3-component vector of bool)
0:300            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:300              vector swizzle ( temp highp 3-component vector of int)
0:300                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:300                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:300                    Constant:
0:300                      1 (const int)
0:300                  Constant:
0:300                    1 (const int)
0:300                Sequence
0:300                  Constant:
0:300                    0 (const int)
0:300                  Constant:
0:300                    1 (const int)
0:300                  Constant:
0:300                    2 (const int)
0:300              Constant:
0:300                0 (const int)
0:300                0 (const int)
0:300                0 (const int)
0:301      move second child to first child ( temp highp 4-component vector of int)
0:301        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:301          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301            Constant:
0:301              0 (const int)
0:301          Constant:
0:301            1 (const int)
0:301        Convert bool to int ( temp highp 4-component vector of int)
0:301          subgroupExclusiveAnd ( global 4-component vector of bool)
0:301            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:301              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:301                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:301                  Constant:
0:301                    1 (const int)
0:301                Constant:
0:301                  1 (const int)
0:301              Constant:
0:301                0 (const int)
0:301                0 (const int)
0:301                0 (const int)
0:301                0 (const int)
0:303      move second child to first child ( temp highp int)
0:303        direct index ( temp highp int)
0:303          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:303            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303              Constant:
0:303                1 (const int)
0:303            Constant:
0:303              1 (const int)
0:303          Constant:
0:303            0 (const int)
0:303        subgroupExclusiveOr ( global highp int)
0:303          direct index ( temp highp int)
0:303            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:303              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:303                Constant:
0:303                  0 (const int)
0:303              Constant:
0:303                1 (const int)
0:303            Constant:
0:303              0 (const int)
0:304      move second child to first child ( temp highp 2-component vector of int)
0:304        vector swizzle ( temp highp 2-component vector of int)
0:304          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:304            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304              Constant:
0:304                1 (const int)
0:304            Constant:
0:304              1 (const int)
0:304          Sequence
0:304            Constant:
0:304              0 (const int)
0:304            Constant:
0:304              1 (const int)
0:304        subgroupExclusiveOr ( global highp 2-component vector of int)
0:304          vector swizzle ( temp highp 2-component vector of int)
0:304            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:304              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:304                Constant:
0:304                  1 (const int)
0:304              Constant:
0:304                1 (const int)
0:304            Sequence
0:304              Constant:
0:304                0 (const int)
0:304              Constant:
0:304                1 (const int)
0:305      move second child to first child ( temp highp 3-component vector of int)
0:305        vector swizzle ( temp highp 3-component vector of int)
0:305          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:305            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305              Constant:
0:305                1 (const int)
0:305            Constant:
0:305              1 (const int)
0:305          Sequence
0:305            Constant:
0:305              0 (const int)
0:305            Constant:
0:305              1 (const int)
0:305            Constant:
0:305              2 (const int)
0:305        subgroupExclusiveOr ( global highp 3-component vector of int)
0:305          vector swizzle ( temp highp 3-component vector of int)
0:305            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:305              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:305                Constant:
0:305                  2 (const int)
0:305              Constant:
0:305                1 (const int)
0:305            Sequence
0:305              Constant:
0:305                0 (const int)
0:305              Constant:
0:305                1 (const int)
0:305              Constant:
0:305                2 (const int)
0:306      move second child to first child ( temp highp 4-component vector of int)
0:306        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:306          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306            Constant:
0:306              1 (const int)
0:306          Constant:
0:306            1 (const int)
0:306        subgroupExclusiveOr ( global highp 4-component vector of int)
0:306          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:306            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:306              Constant:
0:306                3 (const int)
0:306            Constant:
0:306              1 (const int)
0:308      move second child to first child ( temp highp uint)
0:308        direct index ( temp highp uint)
0:308          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:308            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308              Constant:
0:308                2 (const int)
0:308            Constant:
0:308              2 (const int)
0:308          Constant:
0:308            0 (const int)
0:308        subgroupExclusiveOr ( global highp uint)
0:308          direct index ( temp highp uint)
0:308            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:308              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:308                Constant:
0:308                  0 (const int)
0:308              Constant:
0:308                2 (const int)
0:308            Constant:
0:308              0 (const int)
0:309      move second child to first child ( temp highp 2-component vector of uint)
0:309        vector swizzle ( temp highp 2-component vector of uint)
0:309          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:309            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309              Constant:
0:309                2 (const int)
0:309            Constant:
0:309              2 (const int)
0:309          Sequence
0:309            Constant:
0:309              0 (const int)
0:309            Constant:
0:309              1 (const int)
0:309        subgroupExclusiveOr ( global highp 2-component vector of uint)
0:309          vector swizzle ( temp highp 2-component vector of uint)
0:309            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:309              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:309                Constant:
0:309                  1 (const int)
0:309              Constant:
0:309                2 (const int)
0:309            Sequence
0:309              Constant:
0:309                0 (const int)
0:309              Constant:
0:309                1 (const int)
0:310      move second child to first child ( temp highp 3-component vector of uint)
0:310        vector swizzle ( temp highp 3-component vector of uint)
0:310          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:310            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310              Constant:
0:310                2 (const int)
0:310            Constant:
0:310              2 (const int)
0:310          Sequence
0:310            Constant:
0:310              0 (const int)
0:310            Constant:
0:310              1 (const int)
0:310            Constant:
0:310              2 (const int)
0:310        subgroupExclusiveOr ( global highp 3-component vector of uint)
0:310          vector swizzle ( temp highp 3-component vector of uint)
0:310            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:310              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:310                Constant:
0:310                  2 (const int)
0:310              Constant:
0:310                2 (const int)
0:310            Sequence
0:310              Constant:
0:310                0 (const int)
0:310              Constant:
0:310                1 (const int)
0:310              Constant:
0:310                2 (const int)
0:311      move second child to first child ( temp highp 4-component vector of uint)
0:311        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:311          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311            Constant:
0:311              2 (const int)
0:311          Constant:
0:311            2 (const int)
0:311        subgroupExclusiveOr ( global highp 4-component vector of uint)
0:311          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:311            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:311              Constant:
0:311                3 (const int)
0:311            Constant:
0:311              2 (const int)
0:313      move second child to first child ( temp highp int)
0:313        direct index ( temp highp int)
0:313          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:313            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313              Constant:
0:313                3 (const int)
0:313            Constant:
0:313              1 (const int)
0:313          Constant:
0:313            0 (const int)
0:313        Convert bool to int ( temp highp int)
0:313          subgroupExclusiveOr ( global bool)
0:313            Compare Less Than ( temp bool)
0:313              direct index ( temp highp int)
0:313                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:313                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:313                    Constant:
0:313                      0 (const int)
0:313                  Constant:
0:313                    1 (const int)
0:313                Constant:
0:313                  0 (const int)
0:313              Constant:
0:313                0 (const int)
0:314      move second child to first child ( temp highp 2-component vector of int)
0:314        vector swizzle ( temp highp 2-component vector of int)
0:314          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:314            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314              Constant:
0:314                3 (const int)
0:314            Constant:
0:314              1 (const int)
0:314          Sequence
0:314            Constant:
0:314              0 (const int)
0:314            Constant:
0:314              1 (const int)
0:314        Convert bool to int ( temp highp 2-component vector of int)
0:314          subgroupExclusiveOr ( global 2-component vector of bool)
0:314            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:314              vector swizzle ( temp highp 2-component vector of int)
0:314                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:314                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:314                    Constant:
0:314                      1 (const int)
0:314                  Constant:
0:314                    1 (const int)
0:314                Sequence
0:314                  Constant:
0:314                    0 (const int)
0:314                  Constant:
0:314                    1 (const int)
0:314              Constant:
0:314                0 (const int)
0:314                0 (const int)
0:315      move second child to first child ( temp highp 3-component vector of int)
0:315        vector swizzle ( temp highp 3-component vector of int)
0:315          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:315            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315              Constant:
0:315                3 (const int)
0:315            Constant:
0:315              1 (const int)
0:315          Sequence
0:315            Constant:
0:315              0 (const int)
0:315            Constant:
0:315              1 (const int)
0:315            Constant:
0:315              2 (const int)
0:315        Convert bool to int ( temp highp 3-component vector of int)
0:315          subgroupExclusiveOr ( global 3-component vector of bool)
0:315            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:315              vector swizzle ( temp highp 3-component vector of int)
0:315                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:315                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:315                    Constant:
0:315                      1 (const int)
0:315                  Constant:
0:315                    1 (const int)
0:315                Sequence
0:315                  Constant:
0:315                    0 (const int)
0:315                  Constant:
0:315                    1 (const int)
0:315                  Constant:
0:315                    2 (const int)
0:315              Constant:
0:315                0 (const int)
0:315                0 (const int)
0:315                0 (const int)
0:316      move second child to first child ( temp highp 4-component vector of int)
0:316        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:316          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316            Constant:
0:316              3 (const int)
0:316          Constant:
0:316            1 (const int)
0:316        Convert bool to int ( temp highp 4-component vector of int)
0:316          subgroupExclusiveOr ( global 4-component vector of bool)
0:316            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:316              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:316                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:316                  Constant:
0:316                    1 (const int)
0:316                Constant:
0:316                  1 (const int)
0:316              Constant:
0:316                0 (const int)
0:316                0 (const int)
0:316                0 (const int)
0:316                0 (const int)
0:318      move second child to first child ( temp highp int)
0:318        direct index ( temp highp int)
0:318          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:318            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318              Constant:
0:318                0 (const int)
0:318            Constant:
0:318              1 (const int)
0:318          Constant:
0:318            0 (const int)
0:318        subgroupExclusiveXor ( global highp int)
0:318          direct index ( temp highp int)
0:318            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:318              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:318                Constant:
0:318                  0 (const int)
0:318              Constant:
0:318                1 (const int)
0:318            Constant:
0:318              0 (const int)
0:319      move second child to first child ( temp highp 2-component vector of int)
0:319        vector swizzle ( temp highp 2-component vector of int)
0:319          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:319            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319              Constant:
0:319                0 (const int)
0:319            Constant:
0:319              1 (const int)
0:319          Sequence
0:319            Constant:
0:319              0 (const int)
0:319            Constant:
0:319              1 (const int)
0:319        subgroupExclusiveXor ( global highp 2-component vector of int)
0:319          vector swizzle ( temp highp 2-component vector of int)
0:319            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:319              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:319                Constant:
0:319                  1 (const int)
0:319              Constant:
0:319                1 (const int)
0:319            Sequence
0:319              Constant:
0:319                0 (const int)
0:319              Constant:
0:319                1 (const int)
0:320      move second child to first child ( temp highp 3-component vector of int)
0:320        vector swizzle ( temp highp 3-component vector of int)
0:320          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:320            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320              Constant:
0:320                0 (const int)
0:320            Constant:
0:320              1 (const int)
0:320          Sequence
0:320            Constant:
0:320              0 (const int)
0:320            Constant:
0:320              1 (const int)
0:320            Constant:
0:320              2 (const int)
0:320        subgroupExclusiveXor ( global highp 3-component vector of int)
0:320          vector swizzle ( temp highp 3-component vector of int)
0:320            i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:320              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:320                Constant:
0:320                  2 (const int)
0:320              Constant:
0:320                1 (const int)
0:320            Sequence
0:320              Constant:
0:320                0 (const int)
0:320              Constant:
0:320                1 (const int)
0:320              Constant:
0:320                2 (const int)
0:321      move second child to first child ( temp highp 4-component vector of int)
0:321        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:321          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321            Constant:
0:321              0 (const int)
0:321          Constant:
0:321            1 (const int)
0:321        subgroupExclusiveXor ( global highp 4-component vector of int)
0:321          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:321            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:321              Constant:
0:321                3 (const int)
0:321            Constant:
0:321              1 (const int)
0:323      move second child to first child ( temp highp uint)
0:323        direct index ( temp highp uint)
0:323          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:323            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323              Constant:
0:323                1 (const int)
0:323            Constant:
0:323              2 (const int)
0:323          Constant:
0:323            0 (const int)
0:323        subgroupExclusiveXor ( global highp uint)
0:323          direct index ( temp highp uint)
0:323            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:323              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:323                Constant:
0:323                  0 (const int)
0:323              Constant:
0:323                2 (const int)
0:323            Constant:
0:323              0 (const int)
0:324      move second child to first child ( temp highp 2-component vector of uint)
0:324        vector swizzle ( temp highp 2-component vector of uint)
0:324          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:324            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324              Constant:
0:324                1 (const int)
0:324            Constant:
0:324              2 (const int)
0:324          Sequence
0:324            Constant:
0:324              0 (const int)
0:324            Constant:
0:324              1 (const int)
0:324        subgroupExclusiveXor ( global highp 2-component vector of uint)
0:324          vector swizzle ( temp highp 2-component vector of uint)
0:324            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:324              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:324                Constant:
0:324                  1 (const int)
0:324              Constant:
0:324                2 (const int)
0:324            Sequence
0:324              Constant:
0:324                0 (const int)
0:324              Constant:
0:324                1 (const int)
0:325      move second child to first child ( temp highp 3-component vector of uint)
0:325        vector swizzle ( temp highp 3-component vector of uint)
0:325          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:325            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325              Constant:
0:325                1 (const int)
0:325            Constant:
0:325              2 (const int)
0:325          Sequence
0:325            Constant:
0:325              0 (const int)
0:325            Constant:
0:325              1 (const int)
0:325            Constant:
0:325              2 (const int)
0:325        subgroupExclusiveXor ( global highp 3-component vector of uint)
0:325          vector swizzle ( temp highp 3-component vector of uint)
0:325            u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:325              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:325                Constant:
0:325                  2 (const int)
0:325              Constant:
0:325                2 (const int)
0:325            Sequence
0:325              Constant:
0:325                0 (const int)
0:325              Constant:
0:325                1 (const int)
0:325              Constant:
0:325                2 (const int)
0:326      move second child to first child ( temp highp 4-component vector of uint)
0:326        u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:326          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326            Constant:
0:326              1 (const int)
0:326          Constant:
0:326            2 (const int)
0:326        subgroupExclusiveXor ( global highp 4-component vector of uint)
0:326          u4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of uint)
0:326            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:326              Constant:
0:326                3 (const int)
0:326            Constant:
0:326              2 (const int)
0:328      move second child to first child ( temp highp int)
0:328        direct index ( temp highp int)
0:328          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:328            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328              Constant:
0:328                2 (const int)
0:328            Constant:
0:328              1 (const int)
0:328          Constant:
0:328            0 (const int)
0:328        Convert bool to int ( temp highp int)
0:328          subgroupExclusiveXor ( global bool)
0:328            Compare Less Than ( temp bool)
0:328              direct index ( temp highp int)
0:328                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:328                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:328                    Constant:
0:328                      0 (const int)
0:328                  Constant:
0:328                    1 (const int)
0:328                Constant:
0:328                  0 (const int)
0:328              Constant:
0:328                0 (const int)
0:329      move second child to first child ( temp highp 2-component vector of int)
0:329        vector swizzle ( temp highp 2-component vector of int)
0:329          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:329            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329              Constant:
0:329                2 (const int)
0:329            Constant:
0:329              1 (const int)
0:329          Sequence
0:329            Constant:
0:329              0 (const int)
0:329            Constant:
0:329              1 (const int)
0:329        Convert bool to int ( temp highp 2-component vector of int)
0:329          subgroupExclusiveXor ( global 2-component vector of bool)
0:329            Compare Less Than ( global 2-component vector of bool, operation at highp)
0:329              vector swizzle ( temp highp 2-component vector of int)
0:329                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:329                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:329                    Constant:
0:329                      1 (const int)
0:329                  Constant:
0:329                    1 (const int)
0:329                Sequence
0:329                  Constant:
0:329                    0 (const int)
0:329                  Constant:
0:329                    1 (const int)
0:329              Constant:
0:329                0 (const int)
0:329                0 (const int)
0:330      move second child to first child ( temp highp 3-component vector of int)
0:330        vector swizzle ( temp highp 3-component vector of int)
0:330          i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:330            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330              Constant:
0:330                2 (const int)
0:330            Constant:
0:330              1 (const int)
0:330          Sequence
0:330            Constant:
0:330              0 (const int)
0:330            Constant:
0:330              1 (const int)
0:330            Constant:
0:330              2 (const int)
0:330        Convert bool to int ( temp highp 3-component vector of int)
0:330          subgroupExclusiveXor ( global 3-component vector of bool)
0:330            Compare Less Than ( global 3-component vector of bool, operation at highp)
0:330              vector swizzle ( temp highp 3-component vector of int)
0:330                i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:330                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:330                    Constant:
0:330                      1 (const int)
0:330                  Constant:
0:330                    1 (const int)
0:330                Sequence
0:330                  Constant:
0:330                    0 (const int)
0:330                  Constant:
0:330                    1 (const int)
0:330                  Constant:
0:330                    2 (const int)
0:330              Constant:
0:330                0 (const int)
0:330                0 (const int)
0:330                0 (const int)
0:331      move second child to first child ( temp highp 4-component vector of int)
0:331        i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:331          direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331            Constant:
0:331              2 (const int)
0:331          Constant:
0:331            1 (const int)
0:331        Convert bool to int ( temp highp 4-component vector of int)
0:331          subgroupExclusiveXor ( global 4-component vector of bool)
0:331            Compare Less Than ( global 4-component vector of bool, operation at highp)
0:331              i4: direct index for structure (layout( column_major shared) buffer highp 4-component vector of int)
0:331                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})
0:331                  Constant:
0:331                    1 (const int)
0:331                Constant:
0:331                  1 (const int)
0:331              Constant:
0:331                0 (const int)
0:331                0 (const int)
0:331                0 (const int)
0:331                0 (const int)
0:?   Linker Objects
0:?     'gl_WorkGroupSize' ( const highp 3-component vector of uint WorkGroupSize)
0:?       8 (const uint)
0:?       1 (const uint)
0:?       1 (const uint)
0:?     'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer highp 4-component vector of float f4, layout( column_major shared) buffer highp 4-component vector of int i4, layout( column_major shared) buffer highp 4-component vector of uint u4})

