#pragma OPENCL EXTENSION cl_khr_fp16 : enable
__kernel void E_240_360_4_4(write_only image2d_t data0_240x2880, __global uchar* data1_1382400) {
const sampler_t smp = CLK_NORMALIZED_COORDS_FALSE | CLK_ADDRESS_CLAMP | CLK_FILTER_NEAREST;
  int idx0 = get_global_id(0); /* 4 */
  int idx1 = get_global_id(1); /* 360 */
  int idx2 = get_global_id(2); /* 240 */
  int alu0 = ((idx0*1440)+(idx2*5760)+(idx1<<2));
  uchar val0 = (*(data1_1382400+(alu0+1)));
  uchar val1 = (*(data1_1382400+(alu0+2)));
  uchar val2 = (*(data1_1382400+(alu0+3)));
  uchar val3 = (*(data1_1382400+alu0));
  write_imagef(data0_240x2880, (int2)((idx0+(idx1<<3)),idx2), (float4)(((float)((((half)(val3))*((half)(0.00392156862745098f))))),((float)((((half)(val0))*((half)(0.00392156862745098f))))),((float)((((half)(val1))*((half)(0.00392156862745098f))))),((float)((((half)(val2))*((half)(0.00392156862745098f)))))));
}

__kernel void r_120_60_8_4_3_4_3_3_4(write_only image2d_t data0_120x2880, read_only image2d_t data1_240x2880, read_only image2d_t data2_1x1728, read_only image2d_t data3_1x8) {
  float acc0[12];
  int idx0 = get_global_id(0); /* 8 */
  int idx1 = get_global_id(1); /* 60 */
  int idx2 = get_global_id(2); /* 120 */
  int alu0 = (idx1*48);
  *(acc0+0) = 0.0f;
  *(acc0+1) = 0.0f;
  *(acc0+2) = 0.0f;
  *(acc0+3) = 0.0f;
  *(acc0+4) = 0.0f;
  *(acc0+5) = 0.0f;
  *(acc0+6) = 0.0f;
  *(acc0+7) = 0.0f;
  *(acc0+8) = 0.0f;
  *(acc0+9) = 0.0f;
  *(acc0+10) = 0.0f;
  *(acc0+11) = 0.0f;
  for (int Ridx0 = 0; Ridx0 < 4; Ridx0++) {
    for (int Ridx2 = 0; Ridx2 < 3; Ridx2++) {
      int alu13 = ((idx2<<1)+Ridx2+-1);
      for (int Ridx3 = 0; Ridx3 < 3; Ridx3++) {
        int alu14 = (alu0+(Ridx3<<3)+Ridx0);
        float4 val0 = read_imagef(data1_240x2880, smp, (int2)((alu14+-8),alu13));
        int alu15 = ((Ridx0*12)+(Ridx3<<2)+(Ridx2*72)+(idx0*216));
        float4 val1 = read_imagef(data2_1x1728, smp, (int2)((alu15+1),0));
        float4 val2 = read_imagef(data2_1x1728, smp, (int2)((alu15+2),0));
        float4 val3 = read_imagef(data2_1x1728, smp, (int2)((alu15+3),0));
        float4 val4 = read_imagef(data2_1x1728, smp, (int2)(alu15,0));
        float4 val5 = read_imagef(data1_240x2880, smp, (int2)((alu14+8),alu13));
        float4 val6 = read_imagef(data1_240x2880, smp, (int2)((alu14+24),alu13));
        *(acc0+0) = ((*(acc0+0))+(val0.x*val4.x)+(val0.y*val1.x)+(val0.z*val2.x)+(val0.w*val3.x));
        *(acc0+1) = ((*(acc0+1))+(val5.x*val4.x)+(val5.y*val1.x)+(val5.z*val2.x)+(val5.w*val3.x));
        *(acc0+2) = ((*(acc0+2))+(val6.x*val4.x)+(val6.y*val1.x)+(val6.z*val2.x)+(val6.w*val3.x));
        *(acc0+3) = ((*(acc0+3))+(val0.x*val4.y)+(val0.y*val1.y)+(val0.z*val2.y)+(val0.w*val3.y));
        *(acc0+4) = ((*(acc0+4))+(val5.x*val4.y)+(val5.y*val1.y)+(val5.z*val2.y)+(val5.w*val3.y));
        *(acc0+5) = ((*(acc0+5))+(val6.x*val4.y)+(val6.y*val1.y)+(val6.z*val2.y)+(val6.w*val3.y));
        *(acc0+6) = ((*(acc0+6))+(val0.x*val4.z)+(val0.y*val1.z)+(val0.z*val2.z)+(val0.w*val3.z));
        *(acc0+7) = ((*(acc0+7))+(val5.x*val4.z)+(val5.y*val1.z)+(val5.z*val2.z)+(val5.w*val3.z));
        *(acc0+8) = ((*(acc0+8))+(val6.x*val4.z)+(val6.y*val1.z)+(val6.z*val2.z)+(val6.w*val3.z));
        *(acc0+9) = ((*(acc0+9))+(val0.x*val4.w)+(val0.y*val1.w)+(val0.z*val2.w)+(val0.w*val3.w));
        *(acc0+10) = ((*(acc0+10))+(val5.x*val4.w)+(val5.y*val1.w)+(val5.z*val2.w)+(val5.w*val3.w));
        *(acc0+11) = ((*(acc0+11))+(val6.x*val4.w)+(val6.y*val1.w)+(val6.z*val2.w)+(val6.w*val3.w));
      }
    }
  }
  float4 val7 = read_imagef(data3_1x8, smp, (int2)(idx0,0));
  float alu31 = ((*(acc0+0))+val7.x);
  float alu32 = ((*(acc0+3))+val7.y);
  float alu33 = ((*(acc0+6))+val7.z);
  float alu34 = ((*(acc0+9))+val7.w);
  float alu35 = ((*(acc0+1))+val7.x);
  float alu36 = ((*(acc0+4))+val7.y);
  float alu37 = ((*(acc0+7))+val7.z);
  float alu38 = ((*(acc0+10))+val7.w);
  float alu39 = ((*(acc0+2))+val7.x);
  float alu40 = ((*(acc0+5))+val7.y);
  float alu41 = ((*(acc0+8))+val7.z);
  float alu42 = ((*(acc0+11))+val7.w);
  int alu43 = (idx0+alu0);
  write_imagef(data0_120x2880, (int2)(alu43,idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_120x2880, (int2)((alu43+16),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
  write_imagef(data0_120x2880, (int2)((alu43+32),idx2), (float4)(((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39),((1/(1.0f+exp2(((alu40+(0.044715f*alu40*alu40*alu40))*-2.302208198144325f))))*alu40),((1/(1.0f+exp2(((alu41+(0.044715f*alu41*alu41*alu41))*-2.302208198144325f))))*alu41),((1/(1.0f+exp2(((alu42+(0.044715f*alu42*alu42*alu42))*-2.302208198144325f))))*alu42)));
}

__kernel void r_60_30_8_4_3_8_3_3_4(write_only image2d_t data0_60x2880, read_only image2d_t data1_120x2880, read_only image2d_t data2_1x2880, read_only image2d_t data3_1x8) {
  int idx1 = get_global_id(1); /* 30 */
  int idx2 = get_global_id(2); /* 60 */
  int alu0 = (idx1*96);
  for (int Ridx0 = 0; Ridx0 < 8; Ridx0++) {
        int alu14 = (alu0+(Ridx3<<4)+Ridx0);
        float4 val0 = read_imagef(data1_120x2880, smp, (int2)((alu14+-16),alu13));
        int alu15 = ((Ridx0*12)+(Ridx3<<2)+(Ridx2*120)+(idx0*360));
        float4 val1 = read_imagef(data2_1x2880, smp, (int2)((alu15+1),0));
        float4 val2 = read_imagef(data2_1x2880, smp, (int2)((alu15+2),0));
        float4 val3 = read_imagef(data2_1x2880, smp, (int2)((alu15+3),0));
        float4 val4 = read_imagef(data2_1x2880, smp, (int2)(alu15,0));
        float4 val5 = read_imagef(data1_120x2880, smp, (int2)((alu14+16),alu13));
        float4 val6 = read_imagef(data1_120x2880, smp, (int2)((alu14+48),alu13));
      }
    }
  }
  write_imagef(data0_60x2880, (int2)(alu43,idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_60x2880, (int2)((alu43+32),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
  write_imagef(data0_60x2880, (int2)((alu43+64),idx2), (float4)(((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39),((1/(1.0f+exp2(((alu40+(0.044715f*alu40*alu40*alu40))*-2.302208198144325f))))*alu40),((1/(1.0f+exp2(((alu41+(0.044715f*alu41*alu41*alu41))*-2.302208198144325f))))*alu41),((1/(1.0f+exp2(((alu42+(0.044715f*alu42*alu42*alu42))*-2.302208198144325f))))*alu42)));
}

__kernel void r_1800_8_4_3_8_4(write_only image2d_t data0_900x192, read_only image2d_t data1_900x192, read_only image2d_t data2_1x320, read_only image2d_t data3_1x8) {
  int idx1 = get_global_id(1); /* 1800 */
  int alu0 = ((idx1&1)*96);
  int alu1 = (idx1>>1);
    int alu14 = (alu0+Ridx0);
    float4 val0 = read_imagef(data1_900x192, smp, (int2)((alu14+64),alu1));
    float4 val1 = read_imagef(data1_900x192, smp, (int2)(alu14,alu1));
    int alu15 = ((idx0*40)+(Ridx0<<2));
    float4 val2 = read_imagef(data2_1x320, smp, (int2)((alu15+1),0));
    float4 val3 = read_imagef(data2_1x320, smp, (int2)((alu15+2),0));
    float4 val4 = read_imagef(data2_1x320, smp, (int2)((alu15+3),0));
    float4 val5 = read_imagef(data2_1x320, smp, (int2)(alu15,0));
    float4 val6 = read_imagef(data1_900x192, smp, (int2)((alu14+32),alu1));
    *(acc0+0) = ((*(acc0+0))+(val1.x*val5.x)+(val1.y*val2.x)+(val1.z*val3.x)+(val1.w*val4.x));
    *(acc0+1) = ((*(acc0+1))+(val6.x*val5.x)+(val6.y*val2.x)+(val6.z*val3.x)+(val6.w*val4.x));
    *(acc0+2) = ((*(acc0+2))+(val0.x*val5.x)+(val0.y*val2.x)+(val0.z*val3.x)+(val0.w*val4.x));
    *(acc0+3) = ((*(acc0+3))+(val1.x*val5.y)+(val1.y*val2.y)+(val1.z*val3.y)+(val1.w*val4.y));
    *(acc0+4) = ((*(acc0+4))+(val6.x*val5.y)+(val6.y*val2.y)+(val6.z*val3.y)+(val6.w*val4.y));
    *(acc0+5) = ((*(acc0+5))+(val0.x*val5.y)+(val0.y*val2.y)+(val0.z*val3.y)+(val0.w*val4.y));
    *(acc0+6) = ((*(acc0+6))+(val1.x*val5.z)+(val1.y*val2.z)+(val1.z*val3.z)+(val1.w*val4.z));
    *(acc0+7) = ((*(acc0+7))+(val6.x*val5.z)+(val6.y*val2.z)+(val6.z*val3.z)+(val6.w*val4.z));
    *(acc0+8) = ((*(acc0+8))+(val0.x*val5.z)+(val0.y*val2.z)+(val0.z*val3.z)+(val0.w*val4.z));
    *(acc0+9) = ((*(acc0+9))+(val1.x*val5.w)+(val1.y*val2.w)+(val1.z*val3.w)+(val1.w*val4.w));
    *(acc0+10) = ((*(acc0+10))+(val6.x*val5.w)+(val6.y*val2.w)+(val6.z*val3.w)+(val6.w*val4.w));
    *(acc0+11) = ((*(acc0+11))+(val0.x*val5.w)+(val0.y*val2.w)+(val0.z*val3.w)+(val0.w*val4.w));
  }
  float alu29 = ((*(acc0+0))+val7.x);
  float alu30 = ((*(acc0+3))+val7.y);
  float alu31 = ((*(acc0+6))+val7.z);
  float alu32 = ((*(acc0+9))+val7.w);
  float alu33 = ((*(acc0+1))+val7.x);
  float alu34 = ((*(acc0+4))+val7.y);
  float alu35 = ((*(acc0+7))+val7.z);
  float alu36 = ((*(acc0+10))+val7.w);
  float alu37 = ((*(acc0+2))+val7.x);
  float alu38 = ((*(acc0+5))+val7.y);
  float alu39 = ((*(acc0+8))+val7.z);
  float alu40 = ((*(acc0+11))+val7.w);
  int alu41 = (idx0+alu0);
  write_imagef(data0_900x192, (int2)(alu41,alu1), (float4)(((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30),((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32)));
  write_imagef(data0_900x192, (int2)((alu41+32),alu1), (float4)(((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34),((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36)));
  write_imagef(data0_900x192, (int2)((alu41+64),alu1), (float4)(((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38),((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39),((1/(1.0f+exp2(((alu40+(0.044715f*alu40*alu40*alu40))*-2.302208198144325f))))*alu40)));
}

__kernel void r_30_15_24_4_3_8_3_3_4(write_only image2d_t data0_30x1152, read_only image2d_t data1_60x2880, read_only image2d_t data2_1x8640, read_only image2d_t data3_1x24) {
  int idx0 = get_global_id(0); /* 24 */
  int idx1 = get_global_id(1); /* 15 */
  int idx2 = get_global_id(2); /* 30 */
      int alu12 = ((idx2<<1)+Ridx2+-1);
        int alu13 = ((idx1*192)+(Ridx3<<5)+Ridx0);
        float4 val0 = read_imagef(data1_60x2880, smp, (int2)((alu13+-32),alu12));
        int alu14 = ((Ridx0*12)+(Ridx3<<2)+(Ridx2*120)+(idx0*360));
        float4 val1 = read_imagef(data2_1x8640, smp, (int2)((alu14+1),0));
        float4 val2 = read_imagef(data2_1x8640, smp, (int2)((alu14+2),0));
        float4 val3 = read_imagef(data2_1x8640, smp, (int2)((alu14+3),0));
        float4 val4 = read_imagef(data2_1x8640, smp, (int2)(alu14,0));
        float4 val5 = read_imagef(data1_60x2880, smp, (int2)((alu13+32),alu12));
        float4 val6 = read_imagef(data1_60x2880, smp, (int2)((alu13+96),alu12));
      }
    }
  }
  float4 val7 = read_imagef(data3_1x24, smp, (int2)(idx0,0));
  float alu30 = ((*(acc0+0))+val7.x);
  float alu31 = ((*(acc0+3))+val7.y);
  float alu32 = ((*(acc0+6))+val7.z);
  float alu33 = ((*(acc0+9))+val7.w);
  float alu34 = ((*(acc0+1))+val7.x);
  float alu35 = ((*(acc0+4))+val7.y);
  float alu36 = ((*(acc0+7))+val7.z);
  float alu37 = ((*(acc0+10))+val7.w);
  float alu38 = ((*(acc0+2))+val7.x);
  float alu39 = ((*(acc0+5))+val7.y);
  float alu40 = ((*(acc0+8))+val7.z);
  float alu41 = ((*(acc0+11))+val7.w);
  int alu42 = (idx0+(idx1*72));
  write_imagef(data0_30x1152, (int2)(alu42,idx2), (float4)(((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30),((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33)));
  write_imagef(data0_30x1152, (int2)((alu42+24),idx2), (float4)(((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34),((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37)));
  write_imagef(data0_30x1152, (int2)((alu42+48),idx2), (float4)(((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38),((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39),((1/(1.0f+exp2(((alu40+(0.044715f*alu40*alu40*alu40))*-2.302208198144325f))))*alu40),((1/(1.0f+exp2(((alu41+(0.044715f*alu41*alu41*alu41))*-2.302208198144325f))))*alu41)));
}

__kernel void r_30_15_16_4_3_24_4(write_only image2d_t data0_30x768, read_only image2d_t data1_30x1152, read_only image2d_t data2_1x1536, read_only image2d_t data3_1x16) {
  int idx0 = get_global_id(0); /* 16 */
  for (int Ridx0 = 0; Ridx0 < 24; Ridx0++) {
    int alu12 = ((idx1*72)+Ridx0);
    float4 val0 = read_imagef(data1_30x1152, smp, (int2)((alu12+48),idx2));
    float4 val1 = read_imagef(data1_30x1152, smp, (int2)(alu12,idx2));
    int alu13 = ((idx0*96)+(Ridx0<<2));
    float4 val2 = read_imagef(data2_1x1536, smp, (int2)((alu13+1),0));
    float4 val3 = read_imagef(data2_1x1536, smp, (int2)((alu13+2),0));
    float4 val4 = read_imagef(data2_1x1536, smp, (int2)((alu13+3),0));
    float4 val5 = read_imagef(data2_1x1536, smp, (int2)(alu13,0));
    float4 val6 = read_imagef(data1_30x1152, smp, (int2)((alu12+24),idx2));
  }
  float4 val7 = read_imagef(data3_1x16, smp, (int2)(idx0,0));
  float alu27 = ((*(acc0+0))+val7.x);
  float alu28 = ((*(acc0+3))+val7.y);
  float alu29 = ((*(acc0+6))+val7.z);
  float alu30 = ((*(acc0+9))+val7.w);
  float alu31 = ((*(acc0+1))+val7.x);
  float alu32 = ((*(acc0+4))+val7.y);
  float alu33 = ((*(acc0+7))+val7.z);
  float alu34 = ((*(acc0+10))+val7.w);
  float alu35 = ((*(acc0+2))+val7.x);
  float alu36 = ((*(acc0+5))+val7.y);
  float alu37 = ((*(acc0+8))+val7.z);
  float alu38 = ((*(acc0+11))+val7.w);
  int alu39 = (idx0+(idx1*48));
  write_imagef(data0_30x768, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_30x768, (int2)((alu39+16),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_30x768, (int2)((alu39+32),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_30_15_16_4_3_5_5(write_only image2d_t data0_30x2880, read_only image2d_t data1_30x768, read_only image2d_t data2_1x640, read_only image2d_t data3_1x16) {
  float4 cast0 = (float4)(0.0f,0.0f,0.0f,0.0f);
  int alu0 = (idx0+(idx1*48));
  bool alu1 = (idx1<14);
  for (int Ridx0 = 0; Ridx0 < 5; Ridx0++) {
    int alu14 = (idx2+Ridx0+-2);
    float4 val0 = read_imagef(data1_30x768, smp, (int2)((alu0+-32),alu14));
    int alu15 = ((idx0*40)+(Ridx0*5));
    float4 val1 = read_imagef(data2_1x640, smp, (int2)((alu15+2),0));
    float4 val2 = read_imagef(data2_1x640, smp, (int2)(alu15,0));
    float4 val3 = read_imagef(data1_30x768, smp, (int2)(alu0,alu14));
    float4 val4 = read_imagef(data1_30x768, smp, (int2)((alu0+-16),alu14));
    float4 val5 = read_imagef(data2_1x640, smp, (int2)((alu15+1),0));
    float4 val6 = read_imagef(data1_30x768, smp, (int2)((alu0+16),alu14));
    float4 val7 = read_imagef(data2_1x640, smp, (int2)((alu15+3),0));
    float4 val8 = read_imagef(data1_30x768, smp, (int2)((alu0+32),alu14));
    float4 val9 = read_imagef(data2_1x640, smp, (int2)((alu15+4),0));
    float4 val10 = (alu1?read_imagef(data1_30x768, smp, (int2)((alu0+48),alu14)):cast0);
    float4 val11 = (alu1?read_imagef(data1_30x768, smp, (int2)((alu0+64),alu14)):cast0);
    *(acc0+0) = ((*(acc0+0))+(val0.x*val2.x)+(val4.x*val5.x)+(val3.x*val1.x)+(val6.x*val7.x)+(val8.x*val9.x));
    *(acc0+1) = ((*(acc0+1))+(val4.x*val2.x)+(val3.x*val5.x)+(val6.x*val1.x)+(val8.x*val7.x)+(val10.x*val9.x));
    *(acc0+2) = ((*(acc0+2))+(val3.x*val2.x)+(val6.x*val5.x)+(val8.x*val1.x)+(val10.x*val7.x)+(val11.x*val9.x));
    *(acc0+3) = ((*(acc0+3))+(val0.y*val2.y)+(val4.y*val5.y)+(val3.y*val1.y)+(val6.y*val7.y)+(val8.y*val9.y));
    *(acc0+4) = ((*(acc0+4))+(val4.y*val2.y)+(val3.y*val5.y)+(val6.y*val1.y)+(val8.y*val7.y)+(val10.y*val9.y));
    *(acc0+5) = ((*(acc0+5))+(val3.y*val2.y)+(val6.y*val5.y)+(val8.y*val1.y)+(val10.y*val7.y)+(val11.y*val9.y));
    *(acc0+6) = ((*(acc0+6))+(val0.z*val2.z)+(val4.z*val5.z)+(val3.z*val1.z)+(val6.z*val7.z)+(val8.z*val9.z));
    *(acc0+7) = ((*(acc0+7))+(val4.z*val2.z)+(val3.z*val5.z)+(val6.z*val1.z)+(val8.z*val7.z)+(val10.z*val9.z));
    *(acc0+8) = ((*(acc0+8))+(val3.z*val2.z)+(val6.z*val5.z)+(val8.z*val1.z)+(val10.z*val7.z)+(val11.z*val9.z));
    *(acc0+9) = ((*(acc0+9))+(val0.w*val2.w)+(val4.w*val5.w)+(val3.w*val1.w)+(val6.w*val7.w)+(val8.w*val9.w));
    *(acc0+10) = ((*(acc0+10))+(val4.w*val2.w)+(val3.w*val5.w)+(val6.w*val1.w)+(val8.w*val7.w)+(val10.w*val9.w));
    *(acc0+11) = ((*(acc0+11))+(val3.w*val2.w)+(val6.w*val5.w)+(val8.w*val1.w)+(val10.w*val7.w)+(val11.w*val9.w));
  }
  float4 val12 = read_imagef(data3_1x16, smp, (int2)(idx0,0));
  int alu29 = (idx0+(idx1*192));
  write_imagef(data0_30x2880, (int2)(alu29,idx2), (float4)(((*(acc0+0))+val12.x),((*(acc0+3))+val12.y),((*(acc0+6))+val12.z),((*(acc0+9))+val12.w)));
  write_imagef(data0_30x2880, (int2)((alu29+64),idx2), (float4)(((*(acc0+1))+val12.x),((*(acc0+4))+val12.y),((*(acc0+7))+val12.z),((*(acc0+10))+val12.w)));
  write_imagef(data0_30x2880, (int2)((alu29+128),idx2), (float4)(((*(acc0+2))+val12.x),((*(acc0+5))+val12.y),((*(acc0+8))+val12.z),((*(acc0+11))+val12.w)));
}

__kernel void r_30_15_48_4_3_16_4(write_only image2d_t data0_30x2304, read_only image2d_t data1_30x2880, read_only image2d_t data2_1x3456, read_only image2d_t data3_1x48) {
  int idx0 = get_global_id(0); /* 48 */
  for (int Ridx0 = 0; Ridx0 < 16; Ridx0++) {
    int alu12 = ((idx1*192)+Ridx0);
    float4 val0 = read_imagef(data1_30x2880, smp, (int2)((alu12+128),idx2));
    float4 val1 = read_imagef(data1_30x2880, smp, (int2)(alu12,idx2));
    int alu13 = ((idx0*72)+(Ridx0<<2));
    float4 val2 = read_imagef(data2_1x3456, smp, (int2)((alu13+1),0));
    float4 val3 = read_imagef(data2_1x3456, smp, (int2)((alu13+2),0));
    float4 val4 = read_imagef(data2_1x3456, smp, (int2)((alu13+3),0));
    float4 val5 = read_imagef(data2_1x3456, smp, (int2)(alu13,0));
    float4 val6 = read_imagef(data1_30x2880, smp, (int2)((alu12+64),idx2));
  }
  float4 val7 = read_imagef(data3_1x48, smp, (int2)(idx0,0));
  int alu39 = (idx0+(idx1*144));
  write_imagef(data0_30x2304, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_30x2304, (int2)((alu39+48),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_30x2304, (int2)((alu39+96),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_5_23_48_4_3_5_5(write_only image2d_t data0_5x3456, read_only image2d_t data1_30x2304, read_only image2d_t data2_1x1920, read_only image2d_t data3_1x48) {
  int idx1 = get_global_id(1); /* 23 */
  int idx2 = get_global_id(2); /* 5 */
  int alu0 = (idx0+(idx1*96));
  int alu1 = (alu0+-96);
  int alu2 = (alu0+-48);
  int alu3 = (alu0+48);
  int alu4 = (alu0+96);
  bool alu5 = (idx1<22);
    int alu18 = ((idx2*6)+Ridx0);
    int alu19 = (alu18+-2);
    float4 val0 = read_imagef(data1_30x2304, smp, (int2)(alu1,alu19));
    int alu20 = ((idx0*40)+(Ridx0*5));
    float4 val1 = read_imagef(data2_1x1920, smp, (int2)((alu20+1),0));
    float4 val2 = read_imagef(data2_1x1920, smp, (int2)(alu20,0));
    float4 val3 = read_imagef(data1_30x2304, smp, (int2)(alu0,alu19));
    float4 val4 = read_imagef(data1_30x2304, smp, (int2)(alu2,alu19));
    float4 val5 = read_imagef(data2_1x1920, smp, (int2)((alu20+2),0));
    float4 val6 = (alu5?read_imagef(data1_30x2304, smp, (int2)(alu3,alu19)):cast0);
    float4 val7 = read_imagef(data2_1x1920, smp, (int2)((alu20+3),0));
    float4 val8 = (alu5?read_imagef(data1_30x2304, smp, (int2)(alu4,alu19)):cast0);
    float4 val9 = read_imagef(data2_1x1920, smp, (int2)((alu20+4),0));
    int alu21 = (alu18+2);
    float4 val10 = read_imagef(data1_30x2304, smp, (int2)(alu0,alu21));
    float4 val11 = read_imagef(data1_30x2304, smp, (int2)(alu1,alu21));
    float4 val12 = read_imagef(data1_30x2304, smp, (int2)(alu2,alu21));
    float4 val13 = (alu5?read_imagef(data1_30x2304, smp, (int2)(alu3,alu21)):cast0);
    float4 val14 = (alu5?read_imagef(data1_30x2304, smp, (int2)(alu4,alu21)):cast0);
    float4 val15 = read_imagef(data1_30x2304, smp, (int2)(alu0,alu18));
    float4 val16 = read_imagef(data1_30x2304, smp, (int2)(alu1,alu18));
    float4 val17 = read_imagef(data1_30x2304, smp, (int2)(alu2,alu18));
    float4 val18 = (alu5?read_imagef(data1_30x2304, smp, (int2)(alu3,alu18)):cast0);
    float4 val19 = (alu5?read_imagef(data1_30x2304, smp, (int2)(alu4,alu18)):cast0);
    *(acc0+0) = ((*(acc0+0))+(val0.x*val2.x)+(val4.x*val1.x)+(val3.x*val5.x)+(val6.x*val7.x)+(val8.x*val9.x));
    *(acc0+1) = ((*(acc0+1))+(val16.x*val2.x)+(val17.x*val1.x)+(val15.x*val5.x)+(val18.x*val7.x)+(val19.x*val9.x));
    *(acc0+2) = ((*(acc0+2))+(val11.x*val2.x)+(val12.x*val1.x)+(val10.x*val5.x)+(val13.x*val7.x)+(val14.x*val9.x));
    *(acc0+3) = ((*(acc0+3))+(val0.y*val2.y)+(val4.y*val1.y)+(val3.y*val5.y)+(val6.y*val7.y)+(val8.y*val9.y));
    *(acc0+4) = ((*(acc0+4))+(val16.y*val2.y)+(val17.y*val1.y)+(val15.y*val5.y)+(val18.y*val7.y)+(val19.y*val9.y));
    *(acc0+5) = ((*(acc0+5))+(val11.y*val2.y)+(val12.y*val1.y)+(val10.y*val5.y)+(val13.y*val7.y)+(val14.y*val9.y));
    *(acc0+6) = ((*(acc0+6))+(val0.z*val2.z)+(val4.z*val1.z)+(val3.z*val5.z)+(val6.z*val7.z)+(val8.z*val9.z));
    *(acc0+7) = ((*(acc0+7))+(val16.z*val2.z)+(val17.z*val1.z)+(val15.z*val5.z)+(val18.z*val7.z)+(val19.z*val9.z));
    *(acc0+8) = ((*(acc0+8))+(val11.z*val2.z)+(val12.z*val1.z)+(val10.z*val5.z)+(val13.z*val7.z)+(val14.z*val9.z));
    *(acc0+9) = ((*(acc0+9))+(val0.w*val2.w)+(val4.w*val1.w)+(val3.w*val5.w)+(val6.w*val7.w)+(val8.w*val9.w));
    *(acc0+10) = ((*(acc0+10))+(val16.w*val2.w)+(val17.w*val1.w)+(val15.w*val5.w)+(val18.w*val7.w)+(val19.w*val9.w));
    *(acc0+11) = ((*(acc0+11))+(val11.w*val2.w)+(val12.w*val1.w)+(val10.w*val5.w)+(val13.w*val7.w)+(val14.w*val9.w));
  }
  float4 val20 = read_imagef(data3_1x48, smp, (int2)(idx0,0));
  float alu35 = ((*(acc0+0))+val20.x);
  float alu36 = ((*(acc0+3))+val20.y);
  float alu37 = ((*(acc0+6))+val20.z);
  float alu38 = ((*(acc0+9))+val20.w);
  float alu39 = ((*(acc0+1))+val20.x);
  float alu40 = ((*(acc0+4))+val20.y);
  float alu41 = ((*(acc0+7))+val20.z);
  float alu42 = ((*(acc0+10))+val20.w);
  float alu43 = ((*(acc0+2))+val20.x);
  float alu44 = ((*(acc0+5))+val20.y);
  float alu45 = ((*(acc0+8))+val20.z);
  float alu46 = ((*(acc0+11))+val20.w);
  int alu47 = (idx0+(idx1*48));
  write_imagef(data0_5x3456, (int2)(alu47,idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
  write_imagef(data0_5x3456, (int2)((alu47+1152),idx2), (float4)(((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39),((1/(1.0f+exp2(((alu40+(0.044715f*alu40*alu40*alu40))*-2.302208198144325f))))*alu40),((1/(1.0f+exp2(((alu41+(0.044715f*alu41*alu41*alu41))*-2.302208198144325f))))*alu41),((1/(1.0f+exp2(((alu42+(0.044715f*alu42*alu42*alu42))*-2.302208198144325f))))*alu42)));
  write_imagef(data0_5x3456, (int2)((alu47+2304),idx2), (float4)(((1/(1.0f+exp2(((alu43+(0.044715f*alu43*alu43*alu43))*-2.302208198144325f))))*alu43),((1/(1.0f+exp2(((alu44+(0.044715f*alu44*alu44*alu44))*-2.302208198144325f))))*alu44),((1/(1.0f+exp2(((alu45+(0.044715f*alu45*alu45*alu45))*-2.302208198144325f))))*alu45),((1/(1.0f+exp2(((alu46+(0.044715f*alu46*alu46*alu46))*-2.302208198144325f))))*alu46)));
}

__kernel void r_5_23_24_4_3_48_4(write_only image2d_t data0_1x8280, read_only image2d_t data1_5x3456, read_only image2d_t data2_1x4608, read_only image2d_t data3_1x24) {
  for (int Ridx0 = 0; Ridx0 < 48; Ridx0++) {
    int alu12 = ((idx1*48)+Ridx0);
    float4 val0 = read_imagef(data1_5x3456, smp, (int2)(alu12,idx2));
    int alu13 = ((idx0*192)+(Ridx0<<2));
    float4 val1 = read_imagef(data2_1x4608, smp, (int2)((alu13+1),0));
    float4 val2 = read_imagef(data2_1x4608, smp, (int2)((alu13+2),0));
    float4 val3 = read_imagef(data2_1x4608, smp, (int2)((alu13+3),0));
    float4 val4 = read_imagef(data2_1x4608, smp, (int2)(alu13,0));
    float4 val5 = read_imagef(data1_5x3456, smp, (int2)((alu12+1152),idx2));
    float4 val6 = read_imagef(data1_5x3456, smp, (int2)((alu12+2304),idx2));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val4.x)+(val0.y*val1.x)+(val0.z*val2.x)+(val0.w*val3.x));
    *(acc0+1) = ((*(acc0+1))+(val5.x*val4.x)+(val5.y*val1.x)+(val5.z*val2.x)+(val5.w*val3.x));
    *(acc0+2) = ((*(acc0+2))+(val6.x*val4.x)+(val6.y*val1.x)+(val6.z*val2.x)+(val6.w*val3.x));
    *(acc0+3) = ((*(acc0+3))+(val0.x*val4.y)+(val0.y*val1.y)+(val0.z*val2.y)+(val0.w*val3.y));
    *(acc0+4) = ((*(acc0+4))+(val5.x*val4.y)+(val5.y*val1.y)+(val5.z*val2.y)+(val5.w*val3.y));
    *(acc0+5) = ((*(acc0+5))+(val6.x*val4.y)+(val6.y*val1.y)+(val6.z*val2.y)+(val6.w*val3.y));
    *(acc0+6) = ((*(acc0+6))+(val0.x*val4.z)+(val0.y*val1.z)+(val0.z*val2.z)+(val0.w*val3.z));
    *(acc0+7) = ((*(acc0+7))+(val5.x*val4.z)+(val5.y*val1.z)+(val5.z*val2.z)+(val5.w*val3.z));
    *(acc0+8) = ((*(acc0+8))+(val6.x*val4.z)+(val6.y*val1.z)+(val6.z*val2.z)+(val6.w*val3.z));
    *(acc0+9) = ((*(acc0+9))+(val0.x*val4.w)+(val0.y*val1.w)+(val0.z*val2.w)+(val0.w*val3.w));
    *(acc0+10) = ((*(acc0+10))+(val5.x*val4.w)+(val5.y*val1.w)+(val5.z*val2.w)+(val5.w*val3.w));
    *(acc0+11) = ((*(acc0+11))+(val6.x*val4.w)+(val6.y*val1.w)+(val6.z*val2.w)+(val6.w*val3.w));
  }
  int alu27 = (idx0+(idx1*24)+(idx2*1656));
  write_imagef(data0_1x8280, (int2)(alu27,0), (float4)(((*(acc0+0))+val7.x),((*(acc0+3))+val7.y),((*(acc0+6))+val7.z),((*(acc0+9))+val7.w)));
  write_imagef(data0_1x8280, (int2)((alu27+552),0), (float4)(((*(acc0+1))+val7.x),((*(acc0+4))+val7.y),((*(acc0+7))+val7.z),((*(acc0+10))+val7.w)));
  write_imagef(data0_1x8280, (int2)((alu27+1104),0), (float4)(((*(acc0+2))+val7.x),((*(acc0+5))+val7.y),((*(acc0+8))+val7.z),((*(acc0+11))+val7.w)));
}

__kernel void r_5_23_48_4_3_24_4(write_only image2d_t data0_5x3456, read_only image2d_t data1_1x8280, read_only image2d_t data2_1x4608, read_only image2d_t data3_1x48) {
    int alu12 = ((idx1*24)+Ridx0+(idx2*1656));
    float4 val0 = read_imagef(data1_1x8280, smp, (int2)((alu12+1104),0));
    float4 val1 = read_imagef(data1_1x8280, smp, (int2)(alu12,0));
    float4 val2 = read_imagef(data2_1x4608, smp, (int2)((alu13+1),0));
    float4 val3 = read_imagef(data2_1x4608, smp, (int2)((alu13+2),0));
    float4 val4 = read_imagef(data2_1x4608, smp, (int2)((alu13+3),0));
    float4 val5 = read_imagef(data2_1x4608, smp, (int2)(alu13,0));
    float4 val6 = read_imagef(data1_1x8280, smp, (int2)((alu12+552),0));
  }
  write_imagef(data0_5x3456, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_5x3456, (int2)((alu39+1152),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_5x3456, (int2)((alu39+2304),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_5_23_48_4_3_3_3(write_only image2d_t data0_5x3456, read_only image2d_t data1_15x1152, read_only image2d_t data2_1x1152, read_only image2d_t data3_1x48) {
  int alu1 = (idx2*3);
  int alu2 = (alu1+-1);
  float4 val0 = read_imagef(data1_15x1152, smp, (int2)(alu0,alu2));
  int alu3 = (alu0+-48);
  float4 val1 = read_imagef(data1_15x1152, smp, (int2)(alu3,alu2));
  int alu4 = (idx0*24);
  float4 val2 = read_imagef(data2_1x1152, smp, (int2)((alu4+1),0));
  float4 val3 = read_imagef(data2_1x1152, smp, (int2)((alu4+4),0));
  float4 val4 = read_imagef(data2_1x1152, smp, (int2)(alu4,0));
  int alu5 = (alu0+48);
  bool alu6 = (idx1<22);
  float4 val5 = (alu6?read_imagef(data1_15x1152, smp, (int2)(alu5,alu2)):cast0);
  float4 val6 = read_imagef(data2_1x1152, smp, (int2)((alu4+2),0));
  int alu7 = (alu1+1);
  float4 val7 = read_imagef(data1_15x1152, smp, (int2)(alu0,alu7));
  int alu8 = (alu1+2);
  float4 val8 = read_imagef(data1_15x1152, smp, (int2)(alu0,alu8));
  float4 val9 = read_imagef(data1_15x1152, smp, (int2)(alu3,alu8));
  float4 val10 = (alu6?read_imagef(data1_15x1152, smp, (int2)(alu5,alu8)):cast0);
  int alu9 = (alu1+3);
  float4 val11 = read_imagef(data1_15x1152, smp, (int2)(alu0,alu9));
  float4 val12 = read_imagef(data1_15x1152, smp, (int2)(alu3,alu9));
  float4 val13 = (alu6?read_imagef(data1_15x1152, smp, (int2)(alu5,alu9)):cast0);
  float4 val14 = read_imagef(data1_15x1152, smp, (int2)(alu0,alu1));
  float4 val15 = read_imagef(data1_15x1152, smp, (int2)(alu3,alu1));
  float4 val16 = read_imagef(data2_1x1152, smp, (int2)((alu4+3),0));
  float4 val17 = (alu6?read_imagef(data1_15x1152, smp, (int2)(alu5,alu1)):cast0);
  float4 val18 = read_imagef(data2_1x1152, smp, (int2)((alu4+5),0));
  float4 val19 = read_imagef(data1_15x1152, smp, (int2)(alu3,alu7));
  float4 val20 = read_imagef(data2_1x1152, smp, (int2)((alu4+6),0));
  float4 val21 = read_imagef(data2_1x1152, smp, (int2)((alu4+7),0));
  float4 val22 = (alu6?read_imagef(data1_15x1152, smp, (int2)(alu5,alu7)):cast0);
  float4 val23 = read_imagef(data2_1x1152, smp, (int2)((alu4+8),0));
  float4 val24 = read_imagef(data3_1x48, smp, (int2)(idx0,0));
  float alu10 = ((val1.x*val4.x)+(val0.x*val2.x)+(val5.x*val6.x)+(val15.x*val16.x)+(val14.x*val3.x)+(val17.x*val18.x)+(val19.x*val20.x)+(val7.x*val21.x)+(val22.x*val23.x)+val24.x);
  float alu11 = ((val1.y*val4.y)+(val0.y*val2.y)+(val5.y*val6.y)+(val15.y*val16.y)+(val14.y*val3.y)+(val17.y*val18.y)+(val19.y*val20.y)+(val7.y*val21.y)+(val22.y*val23.y)+val24.y);
  float alu12 = ((val1.z*val4.z)+(val0.z*val2.z)+(val5.z*val6.z)+(val15.z*val16.z)+(val14.z*val3.z)+(val17.z*val18.z)+(val19.z*val20.z)+(val7.z*val21.z)+(val22.z*val23.z)+val24.z);
  float alu13 = ((val1.w*val4.w)+(val0.w*val2.w)+(val5.w*val6.w)+(val15.w*val16.w)+(val14.w*val3.w)+(val17.w*val18.w)+(val19.w*val20.w)+(val7.w*val21.w)+(val22.w*val23.w)+val24.w);
  float alu14 = ((val19.x*val4.x)+(val7.x*val2.x)+(val22.x*val6.x)+(val9.x*val16.x)+(val8.x*val3.x)+(val10.x*val18.x)+(val12.x*val20.x)+(val11.x*val21.x)+(val13.x*val23.x)+val24.x);
  float alu15 = ((val19.y*val4.y)+(val7.y*val2.y)+(val22.y*val6.y)+(val9.y*val16.y)+(val8.y*val3.y)+(val10.y*val18.y)+(val12.y*val20.y)+(val11.y*val21.y)+(val13.y*val23.y)+val24.y);
  float alu16 = ((val19.z*val4.z)+(val7.z*val2.z)+(val22.z*val6.z)+(val9.z*val16.z)+(val8.z*val3.z)+(val10.z*val18.z)+(val12.z*val20.z)+(val11.z*val21.z)+(val13.z*val23.z)+val24.z);
  float alu17 = ((val19.w*val4.w)+(val7.w*val2.w)+(val22.w*val6.w)+(val9.w*val16.w)+(val8.w*val3.w)+(val10.w*val18.w)+(val12.w*val20.w)+(val11.w*val21.w)+(val13.w*val23.w)+val24.w);
  float alu18 = ((val15.x*val4.x)+(val14.x*val2.x)+(val17.x*val6.x)+(val19.x*val16.x)+(val7.x*val3.x)+(val22.x*val18.x)+(val9.x*val20.x)+(val8.x*val21.x)+(val10.x*val23.x)+val24.x);
  float alu19 = ((val15.y*val4.y)+(val14.y*val2.y)+(val17.y*val6.y)+(val19.y*val16.y)+(val7.y*val3.y)+(val22.y*val18.y)+(val9.y*val20.y)+(val8.y*val21.y)+(val10.y*val23.y)+val24.y);
  float alu20 = ((val15.z*val4.z)+(val14.z*val2.z)+(val17.z*val6.z)+(val19.z*val16.z)+(val7.z*val3.z)+(val22.z*val18.z)+(val9.z*val20.z)+(val8.z*val21.z)+(val10.z*val23.z)+val24.z);
  float alu21 = ((val15.w*val4.w)+(val14.w*val2.w)+(val17.w*val6.w)+(val19.w*val16.w)+(val7.w*val3.w)+(val22.w*val18.w)+(val9.w*val20.w)+(val8.w*val21.w)+(val10.w*val23.w)+val24.w);
  write_imagef(data0_5x3456, (int2)(alu0,idx2), (float4)(((1/(1.0f+exp2(((alu10+(0.044715f*alu10*alu10*alu10))*-2.302208198144325f))))*alu10),((1/(1.0f+exp2(((alu11+(0.044715f*alu11*alu11*alu11))*-2.302208198144325f))))*alu11),((1/(1.0f+exp2(((alu12+(0.044715f*alu12*alu12*alu12))*-2.302208198144325f))))*alu12),((1/(1.0f+exp2(((alu13+(0.044715f*alu13*alu13*alu13))*-2.302208198144325f))))*alu13)));
  write_imagef(data0_5x3456, (int2)((alu0+1152),idx2), (float4)(((1/(1.0f+exp2(((alu18+(0.044715f*alu18*alu18*alu18))*-2.302208198144325f))))*alu18),((1/(1.0f+exp2(((alu19+(0.044715f*alu19*alu19*alu19))*-2.302208198144325f))))*alu19),((1/(1.0f+exp2(((alu20+(0.044715f*alu20*alu20*alu20))*-2.302208198144325f))))*alu20),((1/(1.0f+exp2(((alu21+(0.044715f*alu21*alu21*alu21))*-2.302208198144325f))))*alu21)));
  write_imagef(data0_5x3456, (int2)((alu0+2304),idx2), (float4)(((1/(1.0f+exp2(((alu14+(0.044715f*alu14*alu14*alu14))*-2.302208198144325f))))*alu14),((1/(1.0f+exp2(((alu15+(0.044715f*alu15*alu15*alu15))*-2.302208198144325f))))*alu15),((1/(1.0f+exp2(((alu16+(0.044715f*alu16*alu16*alu16))*-2.302208198144325f))))*alu16),((1/(1.0f+exp2(((alu17+(0.044715f*alu17*alu17*alu17))*-2.302208198144325f))))*alu17)));
}

__kernel void r_5_23_24_4_3_48_4n1(write_only image2d_t data0_1x8280, read_only image2d_t data1_5x3456, read_only image2d_t data2_1x4608, read_only image2d_t data3_1x24, read_only image2d_t data4_1x8280) {
    int alu12 = ((idx0*192)+(Ridx0<<2));
    float4 val0 = read_imagef(data2_1x4608, smp, (int2)((alu12+3),0));
    int alu13 = ((idx1*48)+Ridx0);
    float4 val1 = read_imagef(data1_5x3456, smp, (int2)((alu13+1152),idx2));
    float4 val2 = read_imagef(data1_5x3456, smp, (int2)((alu13+2304),idx2));
    float4 val3 = read_imagef(data1_5x3456, smp, (int2)(alu13,idx2));
    float4 val4 = read_imagef(data2_1x4608, smp, (int2)((alu12+1),0));
    float4 val5 = read_imagef(data2_1x4608, smp, (int2)((alu12+2),0));
    float4 val6 = read_imagef(data2_1x4608, smp, (int2)(alu12,0));
    *(acc0+0) = ((*(acc0+0))+(val3.x*val6.x)+(val3.y*val4.x)+(val3.z*val5.x)+(val3.w*val0.x));
    *(acc0+1) = ((*(acc0+1))+(val1.x*val6.x)+(val1.y*val4.x)+(val1.z*val5.x)+(val1.w*val0.x));
    *(acc0+2) = ((*(acc0+2))+(val2.x*val6.x)+(val2.y*val4.x)+(val2.z*val5.x)+(val2.w*val0.x));
    *(acc0+3) = ((*(acc0+3))+(val3.x*val6.y)+(val3.y*val4.y)+(val3.z*val5.y)+(val3.w*val0.y));
    *(acc0+4) = ((*(acc0+4))+(val1.x*val6.y)+(val1.y*val4.y)+(val1.z*val5.y)+(val1.w*val0.y));
    *(acc0+5) = ((*(acc0+5))+(val2.x*val6.y)+(val2.y*val4.y)+(val2.z*val5.y)+(val2.w*val0.y));
    *(acc0+6) = ((*(acc0+6))+(val3.x*val6.z)+(val3.y*val4.z)+(val3.z*val5.z)+(val3.w*val0.z));
    *(acc0+7) = ((*(acc0+7))+(val1.x*val6.z)+(val1.y*val4.z)+(val1.z*val5.z)+(val1.w*val0.z));
    *(acc0+8) = ((*(acc0+8))+(val2.x*val6.z)+(val2.y*val4.z)+(val2.z*val5.z)+(val2.w*val0.z));
    *(acc0+9) = ((*(acc0+9))+(val3.x*val6.w)+(val3.y*val4.w)+(val3.z*val5.w)+(val3.w*val0.w));
    *(acc0+10) = ((*(acc0+10))+(val1.x*val6.w)+(val1.y*val4.w)+(val1.z*val5.w)+(val1.w*val0.w));
    *(acc0+11) = ((*(acc0+11))+(val2.x*val6.w)+(val2.y*val4.w)+(val2.z*val5.w)+(val2.w*val0.w));
  }
  float4 val8 = read_imagef(data4_1x8280, smp, (int2)(alu27,0));
  int alu28 = (alu27+552);
  float4 val9 = read_imagef(data4_1x8280, smp, (int2)(alu28,0));
  int alu29 = (alu27+1104);
  float4 val10 = read_imagef(data4_1x8280, smp, (int2)(alu29,0));
  write_imagef(data0_1x8280, (int2)(alu27,0), (float4)(((*(acc0+0))+val7.x+val8.x),((*(acc0+3))+val7.y+val8.y),((*(acc0+6))+val7.z+val8.z),((*(acc0+9))+val7.w+val8.w)));
  write_imagef(data0_1x8280, (int2)(alu28,0), (float4)(((*(acc0+1))+val7.x+val9.x),((*(acc0+4))+val7.y+val9.y),((*(acc0+7))+val7.z+val9.z),((*(acc0+10))+val7.w+val9.w)));
  write_imagef(data0_1x8280, (int2)(alu29,0), (float4)(((*(acc0+2))+val7.x+val10.x),((*(acc0+5))+val7.y+val10.y),((*(acc0+8))+val7.z+val10.z),((*(acc0+11))+val7.w+val10.w)));
}

__kernel void r_5_23_24_4_3_3_3(write_only image2d_t data0_1x8280, read_only image2d_t data1_1x8280, read_only image2d_t data2_1x576, read_only image2d_t data3_1x24) {
  int alu0 = (idx1*24);
  int alu1 = (idx2*1656);
  int alu2 = (idx0+alu0+alu1);
  bool alu3 = (0<idx1);
  float4 val0 = (alu3?read_imagef(data1_1x8280, smp, (int2)((alu2+-576),0)):cast0);
  float4 val1 = read_imagef(data2_1x576, smp, (int2)((alu4+1),0));
  float4 val2 = read_imagef(data2_1x576, smp, (int2)(alu4,0));
  int alu5 = (idx0+alu0+alu1);
  float4 val3 = (alu6?read_imagef(data1_1x8280, smp, (int2)((alu5+1128),0)):cast0);
  float4 val4 = ((alu3&(idx2<4))?read_imagef(data1_1x8280, smp, (int2)((alu5+1632),0)):cast0);
  float4 val5 = read_imagef(data1_1x8280, smp, (int2)((alu5+1656),0));
  float4 val6 = (alu6?read_imagef(data1_1x8280, smp, (int2)((alu5+1680),0)):cast0);
  float4 val7 = read_imagef(data1_1x8280, smp, (int2)((alu2+-552),0));
  float4 val8 = ((alu6&(0<idx2))?read_imagef(data1_1x8280, smp, (int2)((alu2+-528),0)):cast0);
  float4 val9 = read_imagef(data2_1x576, smp, (int2)((alu4+2),0));
  float4 val10 = (alu3?read_imagef(data1_1x8280, smp, (int2)((alu2+-24),0)):cast0);
  float4 val11 = read_imagef(data2_1x576, smp, (int2)((alu4+3),0));
  float4 val12 = read_imagef(data1_1x8280, smp, (int2)(alu2,0));
  float4 val13 = read_imagef(data2_1x576, smp, (int2)((alu4+4),0));
  float4 val14 = (alu6?read_imagef(data1_1x8280, smp, (int2)((alu2+24),0)):cast0);
  float4 val15 = read_imagef(data2_1x576, smp, (int2)((alu4+5),0));
  float4 val16 = (alu3?read_imagef(data1_1x8280, smp, (int2)((alu2+528),0)):cast0);
  float4 val17 = read_imagef(data2_1x576, smp, (int2)((alu4+6),0));
  int alu7 = (alu2+552);
  float4 val18 = read_imagef(data1_1x8280, smp, (int2)(alu7,0));
  float4 val19 = read_imagef(data2_1x576, smp, (int2)((alu4+7),0));
  float4 val20 = (alu6?read_imagef(data1_1x8280, smp, (int2)((alu2+576),0)):cast0);
  float4 val21 = read_imagef(data2_1x576, smp, (int2)((alu4+8),0));
  float4 val22 = read_imagef(data3_1x24, smp, (int2)(idx0,0));
  float4 val23 = (alu3?read_imagef(data1_1x8280, smp, (int2)((alu2+1080),0)):cast0);
  int alu8 = (alu2+1104);
  float4 val24 = read_imagef(data1_1x8280, smp, (int2)(alu8,0));
  write_imagef(data0_1x8280, (int2)(alu2,0), (float4)(((val0.x*val2.x)+(val7.x*val1.x)+(val8.x*val9.x)+(val10.x*val11.x)+(val12.x*val13.x)+(val14.x*val15.x)+(val16.x*val17.x)+(val18.x*val19.x)+(val20.x*val21.x)+val22.x),((val0.y*val2.y)+(val7.y*val1.y)+(val8.y*val9.y)+(val10.y*val11.y)+(val12.y*val13.y)+(val14.y*val15.y)+(val16.y*val17.y)+(val18.y*val19.y)+(val20.y*val21.y)+val22.y),((val0.z*val2.z)+(val7.z*val1.z)+(val8.z*val9.z)+(val10.z*val11.z)+(val12.z*val13.z)+(val14.z*val15.z)+(val16.z*val17.z)+(val18.z*val19.z)+(val20.z*val21.z)+val22.z),((val0.w*val2.w)+(val7.w*val1.w)+(val8.w*val9.w)+(val10.w*val11.w)+(val12.w*val13.w)+(val14.w*val15.w)+(val16.w*val17.w)+(val18.w*val19.w)+(val20.w*val21.w)+val22.w)));
  write_imagef(data0_1x8280, (int2)(alu7,0), (float4)(((val10.x*val2.x)+(val12.x*val1.x)+(val14.x*val9.x)+(val16.x*val11.x)+(val18.x*val13.x)+(val20.x*val15.x)+(val23.x*val17.x)+(val24.x*val19.x)+(val3.x*val21.x)+val22.x),((val10.y*val2.y)+(val12.y*val1.y)+(val14.y*val9.y)+(val16.y*val11.y)+(val18.y*val13.y)+(val20.y*val15.y)+(val23.y*val17.y)+(val24.y*val19.y)+(val3.y*val21.y)+val22.y),((val10.z*val2.z)+(val12.z*val1.z)+(val14.z*val9.z)+(val16.z*val11.z)+(val18.z*val13.z)+(val20.z*val15.z)+(val23.z*val17.z)+(val24.z*val19.z)+(val3.z*val21.z)+val22.z),((val10.w*val2.w)+(val12.w*val1.w)+(val14.w*val9.w)+(val16.w*val11.w)+(val18.w*val13.w)+(val20.w*val15.w)+(val23.w*val17.w)+(val24.w*val19.w)+(val3.w*val21.w)+val22.w)));
  write_imagef(data0_1x8280, (int2)(alu8,0), (float4)(((val16.x*val2.x)+(val18.x*val1.x)+(val20.x*val9.x)+(val23.x*val11.x)+(val24.x*val13.x)+(val3.x*val15.x)+(val4.x*val17.x)+(val5.x*val19.x)+(val6.x*val21.x)+val22.x),((val16.y*val2.y)+(val18.y*val1.y)+(val20.y*val9.y)+(val23.y*val11.y)+(val24.y*val13.y)+(val3.y*val15.y)+(val4.y*val17.y)+(val5.y*val19.y)+(val6.y*val21.y)+val22.y),((val16.z*val2.z)+(val18.z*val1.z)+(val20.z*val9.z)+(val23.z*val11.z)+(val24.z*val13.z)+(val3.z*val15.z)+(val4.z*val17.z)+(val5.z*val19.z)+(val6.z*val21.z)+val22.z),((val16.w*val2.w)+(val18.w*val1.w)+(val20.w*val9.w)+(val23.w*val11.w)+(val24.w*val13.w)+(val3.w*val15.w)+(val4.w*val17.w)+(val5.w*val19.w)+(val6.w*val21.w)+val22.w)));
}

__kernel void r_5_23_96_4_3_24_4(write_only image2d_t data0_5x6912, read_only image2d_t data1_1x8280, read_only image2d_t data2_1x9216, read_only image2d_t data3_1x96) {
  int idx0 = get_global_id(0); /* 96 */
    float4 val2 = read_imagef(data2_1x9216, smp, (int2)((alu13+1),0));
    float4 val3 = read_imagef(data2_1x9216, smp, (int2)((alu13+2),0));
    float4 val4 = read_imagef(data2_1x9216, smp, (int2)((alu13+3),0));
    float4 val5 = read_imagef(data2_1x9216, smp, (int2)(alu13,0));
  }
  float4 val7 = read_imagef(data3_1x96, smp, (int2)(idx0,0));
  int alu39 = (idx0+(idx1*96));
  write_imagef(data0_5x6912, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_5x6912, (int2)((alu39+2304),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_5x6912, (int2)((alu39+4608),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_5_23_24_4_3_96_4(write_only image2d_t data0_1x8280, read_only image2d_t data1_5x6912, read_only image2d_t data2_1x9216, read_only image2d_t data3_1x24, read_only image2d_t data4_1x8280) {
  for (int Ridx0 = 0; Ridx0 < 96; Ridx0++) {
    int alu12 = ((idx0*384)+(Ridx0<<2));
    float4 val0 = read_imagef(data2_1x9216, smp, (int2)((alu12+3),0));
    int alu13 = ((idx1*96)+Ridx0);
    float4 val1 = read_imagef(data1_5x6912, smp, (int2)((alu13+2304),idx2));
    float4 val2 = read_imagef(data1_5x6912, smp, (int2)((alu13+4608),idx2));
    float4 val3 = read_imagef(data1_5x6912, smp, (int2)(alu13,idx2));
    float4 val4 = read_imagef(data2_1x9216, smp, (int2)((alu12+1),0));
    float4 val5 = read_imagef(data2_1x9216, smp, (int2)((alu12+2),0));
    float4 val6 = read_imagef(data2_1x9216, smp, (int2)(alu12,0));
  }
}

__kernel void r_5_23_144_4_3_24_4(write_only image2d_t data0_5x10368, read_only image2d_t data1_1x8280, read_only image2d_t data2_1x13824, read_only image2d_t data3_1x144) {
  int idx0 = get_global_id(0); /* 144 */
    float4 val2 = read_imagef(data2_1x13824, smp, (int2)((alu13+1),0));
    float4 val3 = read_imagef(data2_1x13824, smp, (int2)((alu13+2),0));
    float4 val4 = read_imagef(data2_1x13824, smp, (int2)((alu13+3),0));
    float4 val5 = read_imagef(data2_1x13824, smp, (int2)(alu13,0));
  }
  float4 val7 = read_imagef(data3_1x144, smp, (int2)(idx0,0));
  write_imagef(data0_5x10368, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_5x10368, (int2)((alu39+3456),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_5x10368, (int2)((alu39+6912),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_8_4_144_4_3_3_3(write_only image2d_t data0_1x13824, read_only image2d_t data1_15x3456, read_only image2d_t data2_1x3456, read_only image2d_t data3_1x144) {
  int idx1 = get_global_id(1); /* 4 */
  int idx2 = get_global_id(2); /* 8 */
  int alu0 = (idx0+(idx1*864));
  int alu1 = (idx2<<1);
  float4 val0 = read_imagef(data1_15x3456, smp, (int2)(alu0,alu2));
  int alu3 = (alu0+-144);
  float4 val1 = read_imagef(data1_15x3456, smp, (int2)(alu3,alu2));
  float4 val2 = read_imagef(data2_1x3456, smp, (int2)((alu4+1),0));
  float4 val3 = read_imagef(data2_1x3456, smp, (int2)(alu4,0));
  int alu5 = (alu0+144);
  float4 val4 = read_imagef(data1_15x3456, smp, (int2)(alu5,alu2));
  float4 val5 = read_imagef(data2_1x3456, smp, (int2)((alu4+2),0));
  float4 val6 = read_imagef(data1_15x3456, smp, (int2)(alu3,alu1));
  float4 val7 = read_imagef(data2_1x3456, smp, (int2)((alu4+3),0));
  float4 val8 = read_imagef(data1_15x3456, smp, (int2)(alu0,alu1));
  float4 val9 = read_imagef(data2_1x3456, smp, (int2)((alu4+4),0));
  float4 val10 = read_imagef(data1_15x3456, smp, (int2)(alu5,alu1));
  float4 val11 = read_imagef(data2_1x3456, smp, (int2)((alu4+5),0));
  int alu6 = (alu1+1);
  float4 val12 = read_imagef(data1_15x3456, smp, (int2)(alu0,alu6));
  float4 val13 = read_imagef(data1_15x3456, smp, (int2)(alu3,alu6));
  float4 val14 = read_imagef(data2_1x3456, smp, (int2)((alu4+6),0));
  float4 val15 = read_imagef(data2_1x3456, smp, (int2)((alu4+7),0));
  float4 val16 = read_imagef(data1_15x3456, smp, (int2)(alu5,alu6));
  float4 val17 = read_imagef(data2_1x3456, smp, (int2)((alu4+8),0));
  float4 val18 = read_imagef(data3_1x144, smp, (int2)(idx0,0));
  int alu7 = (alu0+288);
  float4 val19 = read_imagef(data1_15x3456, smp, (int2)(alu7,alu2));
  int alu8 = (alu0+432);
  float4 val20 = read_imagef(data1_15x3456, smp, (int2)(alu8,alu2));
  int alu9 = (alu0+576);
  float4 val21 = read_imagef(data1_15x3456, smp, (int2)(alu9,alu2));
  int alu10 = (alu0+720);
  bool alu11 = (idx1<3);
  float4 val22 = (alu11?read_imagef(data1_15x3456, smp, (int2)(alu10,alu2)):cast0);
  float4 val23 = read_imagef(data1_15x3456, smp, (int2)(alu7,alu6));
  float4 val24 = read_imagef(data1_15x3456, smp, (int2)(alu8,alu6));
  float4 val25 = read_imagef(data1_15x3456, smp, (int2)(alu9,alu6));
  float4 val26 = (alu11?read_imagef(data1_15x3456, smp, (int2)(alu10,alu6)):cast0);
  float4 val27 = read_imagef(data1_15x3456, smp, (int2)(alu7,alu1));
  float4 val28 = read_imagef(data1_15x3456, smp, (int2)(alu8,alu1));
  float4 val29 = read_imagef(data1_15x3456, smp, (int2)(alu9,alu1));
  float4 val30 = (alu11?read_imagef(data1_15x3456, smp, (int2)(alu10,alu1)):cast0);
  float alu12 = ((val1.x*val3.x)+(val0.x*val2.x)+(val4.x*val5.x)+(val6.x*val7.x)+(val8.x*val9.x)+(val10.x*val11.x)+(val13.x*val14.x)+(val12.x*val15.x)+(val16.x*val17.x)+val18.x);
  float alu13 = ((val1.y*val3.y)+(val0.y*val2.y)+(val4.y*val5.y)+(val6.y*val7.y)+(val8.y*val9.y)+(val10.y*val11.y)+(val13.y*val14.y)+(val12.y*val15.y)+(val16.y*val17.y)+val18.y);
  float alu14 = ((val1.z*val3.z)+(val0.z*val2.z)+(val4.z*val5.z)+(val6.z*val7.z)+(val8.z*val9.z)+(val10.z*val11.z)+(val13.z*val14.z)+(val12.z*val15.z)+(val16.z*val17.z)+val18.z);
  float alu15 = ((val1.w*val3.w)+(val0.w*val2.w)+(val4.w*val5.w)+(val6.w*val7.w)+(val8.w*val9.w)+(val10.w*val11.w)+(val13.w*val14.w)+(val12.w*val15.w)+(val16.w*val17.w)+val18.w);
  float alu16 = ((val4.x*val3.x)+(val19.x*val2.x)+(val20.x*val5.x)+(val10.x*val7.x)+(val27.x*val9.x)+(val28.x*val11.x)+(val16.x*val14.x)+(val23.x*val15.x)+(val24.x*val17.x)+val18.x);
  float alu17 = ((val4.y*val3.y)+(val19.y*val2.y)+(val20.y*val5.y)+(val10.y*val7.y)+(val27.y*val9.y)+(val28.y*val11.y)+(val16.y*val14.y)+(val23.y*val15.y)+(val24.y*val17.y)+val18.y);
  float alu18 = ((val4.z*val3.z)+(val19.z*val2.z)+(val20.z*val5.z)+(val10.z*val7.z)+(val27.z*val9.z)+(val28.z*val11.z)+(val16.z*val14.z)+(val23.z*val15.z)+(val24.z*val17.z)+val18.z);
  float alu19 = ((val4.w*val3.w)+(val19.w*val2.w)+(val20.w*val5.w)+(val10.w*val7.w)+(val27.w*val9.w)+(val28.w*val11.w)+(val16.w*val14.w)+(val23.w*val15.w)+(val24.w*val17.w)+val18.w);
  float alu20 = ((val20.x*val3.x)+(val21.x*val2.x)+(val22.x*val5.x)+(val28.x*val7.x)+(val29.x*val9.x)+(val30.x*val11.x)+(val24.x*val14.x)+(val25.x*val15.x)+(val26.x*val17.x)+val18.x);
  float alu21 = ((val20.y*val3.y)+(val21.y*val2.y)+(val22.y*val5.y)+(val28.y*val7.y)+(val29.y*val9.y)+(val30.y*val11.y)+(val24.y*val14.y)+(val25.y*val15.y)+(val26.y*val17.y)+val18.y);
  float alu22 = ((val20.z*val3.z)+(val21.z*val2.z)+(val22.z*val5.z)+(val28.z*val7.z)+(val29.z*val9.z)+(val30.z*val11.z)+(val24.z*val14.z)+(val25.z*val15.z)+(val26.z*val17.z)+val18.z);
  float alu23 = ((val20.w*val3.w)+(val21.w*val2.w)+(val22.w*val5.w)+(val28.w*val7.w)+(val29.w*val9.w)+(val30.w*val11.w)+(val24.w*val14.w)+(val25.w*val15.w)+(val26.w*val17.w)+val18.w);
  int alu24 = (idx0+(idx1*432)+(idx2*1728));
  write_imagef(data0_1x13824, (int2)(alu24,0), (float4)(((1/(1.0f+exp2(((alu12+(0.044715f*alu12*alu12*alu12))*-2.302208198144325f))))*alu12),((1/(1.0f+exp2(((alu13+(0.044715f*alu13*alu13*alu13))*-2.302208198144325f))))*alu13),((1/(1.0f+exp2(((alu14+(0.044715f*alu14*alu14*alu14))*-2.302208198144325f))))*alu14),((1/(1.0f+exp2(((alu15+(0.044715f*alu15*alu15*alu15))*-2.302208198144325f))))*alu15)));
  write_imagef(data0_1x13824, (int2)((alu24+144),0), (float4)(((1/(1.0f+exp2(((alu16+(0.044715f*alu16*alu16*alu16))*-2.302208198144325f))))*alu16),((1/(1.0f+exp2(((alu17+(0.044715f*alu17*alu17*alu17))*-2.302208198144325f))))*alu17),((1/(1.0f+exp2(((alu18+(0.044715f*alu18*alu18*alu18))*-2.302208198144325f))))*alu18),((1/(1.0f+exp2(((alu19+(0.044715f*alu19*alu19*alu19))*-2.302208198144325f))))*alu19)));
  write_imagef(data0_1x13824, (int2)((alu24+288),0), (float4)(((1/(1.0f+exp2(((alu20+(0.044715f*alu20*alu20*alu20))*-2.302208198144325f))))*alu20),((1/(1.0f+exp2(((alu21+(0.044715f*alu21*alu21*alu21))*-2.302208198144325f))))*alu21),((1/(1.0f+exp2(((alu22+(0.044715f*alu22*alu22*alu22))*-2.302208198144325f))))*alu22),((1/(1.0f+exp2(((alu23+(0.044715f*alu23*alu23*alu23))*-2.302208198144325f))))*alu23)));
}

__kernel void r_32_32_4_3_144_4(write_only image2d_t data0_1x3072, read_only image2d_t data1_1x13824, read_only image2d_t data2_32x576, read_only image2d_t data3_1x32) {
  int idx0 = get_global_id(0); /* 32 */
  int idx1 = get_global_id(1); /* 32 */
  for (int Ridx0 = 0; Ridx0 < 144; Ridx0++) {
    int alu12 = ((idx1*432)+Ridx0);
    float4 val0 = read_imagef(data1_1x13824, smp, (int2)(alu12,0));
    int alu13 = (Ridx0<<2);
    float4 val1 = read_imagef(data2_32x576, smp, (int2)((alu13+1),idx0));
    float4 val2 = read_imagef(data2_32x576, smp, (int2)((alu13+2),idx0));
    float4 val3 = read_imagef(data2_32x576, smp, (int2)((alu13+3),idx0));
    float4 val4 = read_imagef(data2_32x576, smp, (int2)(alu13,idx0));
    float4 val5 = read_imagef(data1_1x13824, smp, (int2)((alu12+144),0));
    float4 val6 = read_imagef(data1_1x13824, smp, (int2)((alu12+288),0));
  }
  float4 val7 = read_imagef(data3_1x32, smp, (int2)(idx0,0));
  int alu27 = (idx0+(idx1*96));
  write_imagef(data0_1x3072, (int2)(alu27,0), (float4)(((*(acc0+0))+val7.x),((*(acc0+3))+val7.y),((*(acc0+6))+val7.z),((*(acc0+9))+val7.w)));
  write_imagef(data0_1x3072, (int2)((alu27+32),0), (float4)(((*(acc0+1))+val7.x),((*(acc0+4))+val7.y),((*(acc0+7))+val7.z),((*(acc0+10))+val7.w)));
  write_imagef(data0_1x3072, (int2)((alu27+64),0), (float4)(((*(acc0+2))+val7.x),((*(acc0+5))+val7.y),((*(acc0+8))+val7.z),((*(acc0+11))+val7.w)));
}

__kernel void r_8_4_32_4_3_5_5(write_only image2d_t data0_1x3264, read_only image2d_t data1_8x384, read_only image2d_t data2_1x1280, read_only image2d_t data3_1x32) {
    int alu13 = (idx2+Ridx0+-2);
    float4 val0 = read_imagef(data1_8x384, smp, (int2)((alu0+-64),alu13));
    int alu14 = ((idx0*40)+(Ridx0*5));
    float4 val1 = read_imagef(data2_1x1280, smp, (int2)((alu14+1),0));
    float4 val2 = read_imagef(data2_1x1280, smp, (int2)((alu14+2),0));
    float4 val3 = read_imagef(data2_1x1280, smp, (int2)(alu14,0));
    float4 val4 = read_imagef(data1_8x384, smp, (int2)(alu0,alu13));
    float4 val5 = read_imagef(data1_8x384, smp, (int2)((alu0+-32),alu13));
    float4 val6 = read_imagef(data1_8x384, smp, (int2)((alu0+32),alu13));
    float4 val7 = read_imagef(data2_1x1280, smp, (int2)((alu14+3),0));
    float4 val8 = read_imagef(data1_8x384, smp, (int2)((alu0+64),alu13));
    float4 val9 = read_imagef(data2_1x1280, smp, (int2)((alu14+4),0));
    float4 val10 = read_imagef(data1_8x384, smp, (int2)((alu0+96),alu13));
    float4 val11 = read_imagef(data1_8x384, smp, (int2)((alu0+128),alu13));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val3.x)+(val5.x*val1.x)+(val4.x*val2.x)+(val6.x*val7.x)+(val8.x*val9.x));
    *(acc0+1) = ((*(acc0+1))+(val5.x*val3.x)+(val4.x*val1.x)+(val6.x*val2.x)+(val8.x*val7.x)+(val10.x*val9.x));
    *(acc0+2) = ((*(acc0+2))+(val4.x*val3.x)+(val6.x*val1.x)+(val8.x*val2.x)+(val10.x*val7.x)+(val11.x*val9.x));
    *(acc0+3) = ((*(acc0+3))+(val0.y*val3.y)+(val5.y*val1.y)+(val4.y*val2.y)+(val6.y*val7.y)+(val8.y*val9.y));
    *(acc0+4) = ((*(acc0+4))+(val5.y*val3.y)+(val4.y*val1.y)+(val6.y*val2.y)+(val8.y*val7.y)+(val10.y*val9.y));
    *(acc0+5) = ((*(acc0+5))+(val4.y*val3.y)+(val6.y*val1.y)+(val8.y*val2.y)+(val10.y*val7.y)+(val11.y*val9.y));
    *(acc0+6) = ((*(acc0+6))+(val0.z*val3.z)+(val5.z*val1.z)+(val4.z*val2.z)+(val6.z*val7.z)+(val8.z*val9.z));
    *(acc0+7) = ((*(acc0+7))+(val5.z*val3.z)+(val4.z*val1.z)+(val6.z*val2.z)+(val8.z*val7.z)+(val10.z*val9.z));
    *(acc0+8) = ((*(acc0+8))+(val4.z*val3.z)+(val6.z*val1.z)+(val8.z*val2.z)+(val10.z*val7.z)+(val11.z*val9.z));
    *(acc0+9) = ((*(acc0+9))+(val0.w*val3.w)+(val5.w*val1.w)+(val4.w*val2.w)+(val6.w*val7.w)+(val8.w*val9.w));
    *(acc0+10) = ((*(acc0+10))+(val5.w*val3.w)+(val4.w*val1.w)+(val6.w*val2.w)+(val8.w*val7.w)+(val10.w*val9.w));
    *(acc0+11) = ((*(acc0+11))+(val4.w*val3.w)+(val6.w*val1.w)+(val8.w*val2.w)+(val10.w*val7.w)+(val11.w*val9.w));
  }
  float4 val12 = read_imagef(data3_1x32, smp, (int2)(idx0,0));
  int alu28 = (idx0+(idx1*102)+(idx2*408));
  write_imagef(data0_1x3264, (int2)(alu28,0), (float4)(((*(acc0+0))+val12.x),((*(acc0+3))+val12.y),((*(acc0+6))+val12.z),((*(acc0+9))+val12.w)));
  write_imagef(data0_1x3264, (int2)((alu28+34),0), (float4)(((*(acc0+1))+val12.x),((*(acc0+4))+val12.y),((*(acc0+7))+val12.z),((*(acc0+10))+val12.w)));
  write_imagef(data0_1x3264, (int2)((alu28+68),0), (float4)(((*(acc0+2))+val12.x),((*(acc0+5))+val12.y),((*(acc0+8))+val12.z),((*(acc0+11))+val12.w)));
}

__kernel void r_32_128_4_3_32_4(write_only image2d_t data0_1x12288, read_only image2d_t data1_1x3264, read_only image2d_t data2_128x192, read_only image2d_t data3_1x128) {
  int idx0 = get_global_id(0); /* 128 */
  for (int Ridx0 = 0; Ridx0 < 32; Ridx0++) {
    int alu12 = ((idx1*102)+Ridx0);
    float4 val0 = read_imagef(data1_1x3264, smp, (int2)((alu12+68),0));
    float4 val1 = read_imagef(data1_1x3264, smp, (int2)(alu12,0));
    float4 val2 = read_imagef(data2_128x192, smp, (int2)((alu13+1),idx0));
    float4 val3 = read_imagef(data2_128x192, smp, (int2)((alu13+2),idx0));
    float4 val4 = read_imagef(data2_128x192, smp, (int2)((alu13+3),idx0));
    float4 val5 = read_imagef(data2_128x192, smp, (int2)(alu13,idx0));
    float4 val6 = read_imagef(data1_1x3264, smp, (int2)((alu12+34),0));
  }
  float4 val7 = read_imagef(data3_1x128, smp, (int2)(idx0,0));
  int alu39 = (idx0+(idx1*384));
  write_imagef(data0_1x12288, (int2)(alu39,0), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_1x12288, (int2)((alu39+128),0), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_1x12288, (int2)((alu39+256),0), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_8_4_128_4_3_5_5(write_only image2d_t data0_1x12480, read_only image2d_t data1_8x1536, read_only image2d_t data2_1x5120, read_only image2d_t data3_1x128) {
  int alu0 = (idx0+(idx1*384));
    float4 val0 = read_imagef(data1_8x1536, smp, (int2)(alu0,alu13));
    float4 val1 = read_imagef(data1_8x1536, smp, (int2)((alu0+-256),alu13));
    float4 val2 = read_imagef(data2_1x5120, smp, (int2)(alu14,0));
    float4 val3 = read_imagef(data1_8x1536, smp, (int2)((alu0+-128),alu13));
    float4 val4 = read_imagef(data2_1x5120, smp, (int2)((alu14+1),0));
    float4 val5 = read_imagef(data2_1x5120, smp, (int2)((alu14+2),0));
    float4 val6 = read_imagef(data1_8x1536, smp, (int2)((alu0+128),alu13));
    float4 val7 = read_imagef(data2_1x5120, smp, (int2)((alu14+3),0));
    float4 val8 = read_imagef(data1_8x1536, smp, (int2)((alu0+256),alu13));
    float4 val9 = read_imagef(data2_1x5120, smp, (int2)((alu14+4),0));
    float4 val10 = read_imagef(data1_8x1536, smp, (int2)((alu0+384),alu13));
    float4 val11 = read_imagef(data1_8x1536, smp, (int2)((alu0+512),alu13));
    *(acc0+0) = ((*(acc0+0))+(val1.x*val2.x)+(val3.x*val4.x)+(val0.x*val5.x)+(val6.x*val7.x)+(val8.x*val9.x));
    *(acc0+1) = ((*(acc0+1))+(val3.x*val2.x)+(val0.x*val4.x)+(val6.x*val5.x)+(val8.x*val7.x)+(val10.x*val9.x));
    *(acc0+2) = ((*(acc0+2))+(val0.x*val2.x)+(val6.x*val4.x)+(val8.x*val5.x)+(val10.x*val7.x)+(val11.x*val9.x));
    *(acc0+3) = ((*(acc0+3))+(val1.y*val2.y)+(val3.y*val4.y)+(val0.y*val5.y)+(val6.y*val7.y)+(val8.y*val9.y));
    *(acc0+4) = ((*(acc0+4))+(val3.y*val2.y)+(val0.y*val4.y)+(val6.y*val5.y)+(val8.y*val7.y)+(val10.y*val9.y));
    *(acc0+5) = ((*(acc0+5))+(val0.y*val2.y)+(val6.y*val4.y)+(val8.y*val5.y)+(val10.y*val7.y)+(val11.y*val9.y));
    *(acc0+6) = ((*(acc0+6))+(val1.z*val2.z)+(val3.z*val4.z)+(val0.z*val5.z)+(val6.z*val7.z)+(val8.z*val9.z));
    *(acc0+7) = ((*(acc0+7))+(val3.z*val2.z)+(val0.z*val4.z)+(val6.z*val5.z)+(val8.z*val7.z)+(val10.z*val9.z));
    *(acc0+8) = ((*(acc0+8))+(val0.z*val2.z)+(val6.z*val4.z)+(val8.z*val5.z)+(val10.z*val7.z)+(val11.z*val9.z));
    *(acc0+9) = ((*(acc0+9))+(val1.w*val2.w)+(val3.w*val4.w)+(val0.w*val5.w)+(val6.w*val7.w)+(val8.w*val9.w));
    *(acc0+10) = ((*(acc0+10))+(val3.w*val2.w)+(val0.w*val4.w)+(val6.w*val5.w)+(val8.w*val7.w)+(val10.w*val9.w));
    *(acc0+11) = ((*(acc0+11))+(val0.w*val2.w)+(val6.w*val4.w)+(val8.w*val5.w)+(val10.w*val7.w)+(val11.w*val9.w));
  }
  float4 val12 = read_imagef(data3_1x128, smp, (int2)(idx0,0));
  float alu28 = ((*(acc0+0))+val12.x);
  float alu29 = ((*(acc0+3))+val12.y);
  float alu30 = ((*(acc0+6))+val12.z);
  float alu31 = ((*(acc0+9))+val12.w);
  float alu32 = ((*(acc0+1))+val12.x);
  float alu33 = ((*(acc0+4))+val12.y);
  float alu34 = ((*(acc0+7))+val12.z);
  float alu35 = ((*(acc0+10))+val12.w);
  float alu36 = ((*(acc0+2))+val12.x);
  float alu37 = ((*(acc0+5))+val12.y);
  float alu38 = ((*(acc0+8))+val12.z);
  float alu39 = ((*(acc0+11))+val12.w);
  int alu40 = (idx0+(idx1*390)+(idx2*1560));
  write_imagef(data0_1x12480, (int2)(alu40,0), (float4)(((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30),((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31)));
  write_imagef(data0_1x12480, (int2)((alu40+130),0), (float4)(((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34),((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35)));
  write_imagef(data0_1x12480, (int2)((alu40+260),0), (float4)(((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38),((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39)));
}

__kernel void r_32_32_4_3_128_4(write_only image2d_t data0_1x3264, read_only image2d_t data1_1x12480, read_only image2d_t data2_32x576, read_only image2d_t data3_1x32, read_only image2d_t data4_1x3072) {
  for (int Ridx0 = 0; Ridx0 < 128; Ridx0++) {
    int alu12 = ((idx1*390)+Ridx0);
    float4 val0 = read_imagef(data1_1x12480, smp, (int2)((alu12+130),0));
    float4 val1 = read_imagef(data1_1x12480, smp, (int2)((alu12+260),0));
    float4 val2 = read_imagef(data1_1x12480, smp, (int2)(alu12,0));
    float4 val3 = read_imagef(data2_32x576, smp, (int2)((alu13+1),idx0));
    float4 val4 = read_imagef(data2_32x576, smp, (int2)((alu13+2),idx0));
    float4 val5 = read_imagef(data2_32x576, smp, (int2)((alu13+3),idx0));
    float4 val6 = read_imagef(data2_32x576, smp, (int2)(alu13,idx0));
    *(acc0+0) = ((*(acc0+0))+(val2.x*val6.x)+(val2.y*val3.x)+(val2.z*val4.x)+(val2.w*val5.x));
    *(acc0+1) = ((*(acc0+1))+(val0.x*val6.x)+(val0.y*val3.x)+(val0.z*val4.x)+(val0.w*val5.x));
    *(acc0+2) = ((*(acc0+2))+(val1.x*val6.x)+(val1.y*val3.x)+(val1.z*val4.x)+(val1.w*val5.x));
    *(acc0+3) = ((*(acc0+3))+(val2.x*val6.y)+(val2.y*val3.y)+(val2.z*val4.y)+(val2.w*val5.y));
    *(acc0+4) = ((*(acc0+4))+(val0.x*val6.y)+(val0.y*val3.y)+(val0.z*val4.y)+(val0.w*val5.y));
    *(acc0+5) = ((*(acc0+5))+(val1.x*val6.y)+(val1.y*val3.y)+(val1.z*val4.y)+(val1.w*val5.y));
    *(acc0+6) = ((*(acc0+6))+(val2.x*val6.z)+(val2.y*val3.z)+(val2.z*val4.z)+(val2.w*val5.z));
    *(acc0+7) = ((*(acc0+7))+(val0.x*val6.z)+(val0.y*val3.z)+(val0.z*val4.z)+(val0.w*val5.z));
    *(acc0+8) = ((*(acc0+8))+(val1.x*val6.z)+(val1.y*val3.z)+(val1.z*val4.z)+(val1.w*val5.z));
    *(acc0+9) = ((*(acc0+9))+(val2.x*val6.w)+(val2.y*val3.w)+(val2.z*val4.w)+(val2.w*val5.w));
    *(acc0+10) = ((*(acc0+10))+(val0.x*val6.w)+(val0.y*val3.w)+(val0.z*val4.w)+(val0.w*val5.w));
    *(acc0+11) = ((*(acc0+11))+(val1.x*val6.w)+(val1.y*val3.w)+(val1.z*val4.w)+(val1.w*val5.w));
  }
  float4 val8 = read_imagef(data4_1x3072, smp, (int2)(alu27,0));
  float4 val9 = read_imagef(data4_1x3072, smp, (int2)((alu27+32),0));
  float4 val10 = read_imagef(data4_1x3072, smp, (int2)((alu27+64),0));
  int alu28 = (idx0+(idx1*102));
  write_imagef(data0_1x3264, (int2)(alu28,0), (float4)(((*(acc0+0))+val7.x+val8.x),((*(acc0+3))+val7.y+val8.y),((*(acc0+6))+val7.z+val8.z),((*(acc0+9))+val7.w+val8.w)));
  write_imagef(data0_1x3264, (int2)((alu28+34),0), (float4)(((*(acc0+1))+val7.x+val9.x),((*(acc0+4))+val7.y+val9.y),((*(acc0+7))+val7.z+val9.z),((*(acc0+10))+val7.w+val9.w)));
  write_imagef(data0_1x3264, (int2)((alu28+68),0), (float4)(((*(acc0+2))+val7.x+val10.x),((*(acc0+5))+val7.y+val10.y),((*(acc0+8))+val7.z+val10.z),((*(acc0+11))+val7.w+val10.w)));
}

__kernel void r_32_32_4_3_128_4n1(write_only image2d_t data0_1x3264, read_only image2d_t data1_1x12480, read_only image2d_t data2_32x576, read_only image2d_t data3_1x32, read_only image2d_t data4_1x3264) {
    int alu12 = (Ridx0<<2);
    float4 val0 = read_imagef(data2_32x576, smp, (int2)((alu12+3),idx0));
    int alu13 = ((idx1*390)+Ridx0);
    float4 val1 = read_imagef(data1_1x12480, smp, (int2)((alu13+130),0));
    float4 val2 = read_imagef(data1_1x12480, smp, (int2)((alu13+260),0));
    float4 val3 = read_imagef(data1_1x12480, smp, (int2)(alu13,0));
    float4 val4 = read_imagef(data2_32x576, smp, (int2)((alu12+1),idx0));
    float4 val5 = read_imagef(data2_32x576, smp, (int2)((alu12+2),idx0));
    float4 val6 = read_imagef(data2_32x576, smp, (int2)(alu12,idx0));
  }
  int alu27 = (idx0+(idx1*102));
  float4 val8 = read_imagef(data4_1x3264, smp, (int2)(alu27,0));
  int alu28 = (alu27+34);
  float4 val9 = read_imagef(data4_1x3264, smp, (int2)(alu28,0));
  int alu29 = (alu27+68);
  float4 val10 = read_imagef(data4_1x3264, smp, (int2)(alu29,0));
  write_imagef(data0_1x3264, (int2)(alu27,0), (float4)(((*(acc0+0))+val7.x+val8.x),((*(acc0+3))+val7.y+val8.y),((*(acc0+6))+val7.z+val8.z),((*(acc0+9))+val7.w+val8.w)));
  write_imagef(data0_1x3264, (int2)(alu28,0), (float4)(((*(acc0+1))+val7.x+val9.x),((*(acc0+4))+val7.y+val9.y),((*(acc0+7))+val7.z+val9.z),((*(acc0+10))+val7.w+val9.w)));
  write_imagef(data0_1x3264, (int2)(alu29,0), (float4)(((*(acc0+2))+val7.x+val10.x),((*(acc0+5))+val7.y+val10.y),((*(acc0+8))+val7.z+val10.z),((*(acc0+11))+val7.w+val10.w)));
}

__kernel void r_32_96_4_3_32_4(write_only image2d_t data0_1x9216, read_only image2d_t data1_1x3264, read_only image2d_t data2_1x13056, read_only image2d_t data3_1x96) {
    int alu13 = ((idx0*136)+(Ridx0<<2));
    float4 val2 = read_imagef(data2_1x13056, smp, (int2)((alu13+1),0));
    float4 val3 = read_imagef(data2_1x13056, smp, (int2)((alu13+2),0));
    float4 val4 = read_imagef(data2_1x13056, smp, (int2)((alu13+3),0));
    float4 val5 = read_imagef(data2_1x13056, smp, (int2)(alu13,0));
  }
  int alu39 = (idx0+(idx1*288));
  write_imagef(data0_1x9216, (int2)(alu39,0), (float4)(((1/(1.0f+exp2(((alu27+(0.044715f*alu27*alu27*alu27))*-2.302208198144325f))))*alu27),((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30)));
  write_imagef(data0_1x9216, (int2)((alu39+96),0), (float4)(((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31),((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34)));
  write_imagef(data0_1x9216, (int2)((alu39+192),0), (float4)(((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35),((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38)));
}

__kernel void r_8_4_96_4_3_5_5(write_only image2d_t data0_1x9216, read_only image2d_t data1_8x1152, read_only image2d_t data2_1x3840, read_only image2d_t data3_1x96) {
  int alu0 = (idx0+(idx1*288));
    float4 val0 = read_imagef(data1_8x1152, smp, (int2)((alu0+-192),alu13));
    float4 val1 = read_imagef(data2_1x3840, smp, (int2)((alu14+1),0));
    float4 val2 = read_imagef(data2_1x3840, smp, (int2)((alu14+3),0));
    float4 val3 = read_imagef(data2_1x3840, smp, (int2)((alu14+4),0));
    float4 val4 = read_imagef(data2_1x3840, smp, (int2)(alu14,0));
    float4 val5 = read_imagef(data1_8x1152, smp, (int2)(alu0,alu13));
    float4 val6 = read_imagef(data1_8x1152, smp, (int2)((alu0+-96),alu13));
    float4 val7 = read_imagef(data2_1x3840, smp, (int2)((alu14+2),0));
    float4 val8 = read_imagef(data1_8x1152, smp, (int2)((alu0+96),alu13));
    float4 val9 = read_imagef(data1_8x1152, smp, (int2)((alu0+192),alu13));
    float4 val10 = read_imagef(data1_8x1152, smp, (int2)((alu0+288),alu13));
    float4 val11 = read_imagef(data1_8x1152, smp, (int2)((alu0+384),alu13));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val4.x)+(val6.x*val1.x)+(val5.x*val7.x)+(val8.x*val2.x)+(val9.x*val3.x));
    *(acc0+1) = ((*(acc0+1))+(val6.x*val4.x)+(val5.x*val1.x)+(val8.x*val7.x)+(val9.x*val2.x)+(val10.x*val3.x));
    *(acc0+2) = ((*(acc0+2))+(val5.x*val4.x)+(val8.x*val1.x)+(val9.x*val7.x)+(val10.x*val2.x)+(val11.x*val3.x));
    *(acc0+3) = ((*(acc0+3))+(val0.y*val4.y)+(val6.y*val1.y)+(val5.y*val7.y)+(val8.y*val2.y)+(val9.y*val3.y));
    *(acc0+4) = ((*(acc0+4))+(val6.y*val4.y)+(val5.y*val1.y)+(val8.y*val7.y)+(val9.y*val2.y)+(val10.y*val3.y));
    *(acc0+5) = ((*(acc0+5))+(val5.y*val4.y)+(val8.y*val1.y)+(val9.y*val7.y)+(val10.y*val2.y)+(val11.y*val3.y));
    *(acc0+6) = ((*(acc0+6))+(val0.z*val4.z)+(val6.z*val1.z)+(val5.z*val7.z)+(val8.z*val2.z)+(val9.z*val3.z));
    *(acc0+7) = ((*(acc0+7))+(val6.z*val4.z)+(val5.z*val1.z)+(val8.z*val7.z)+(val9.z*val2.z)+(val10.z*val3.z));
    *(acc0+8) = ((*(acc0+8))+(val5.z*val4.z)+(val8.z*val1.z)+(val9.z*val7.z)+(val10.z*val2.z)+(val11.z*val3.z));
    *(acc0+9) = ((*(acc0+9))+(val0.w*val4.w)+(val6.w*val1.w)+(val5.w*val7.w)+(val8.w*val2.w)+(val9.w*val3.w));
    *(acc0+10) = ((*(acc0+10))+(val6.w*val4.w)+(val5.w*val1.w)+(val8.w*val7.w)+(val9.w*val2.w)+(val10.w*val3.w));
    *(acc0+11) = ((*(acc0+11))+(val5.w*val4.w)+(val8.w*val1.w)+(val9.w*val7.w)+(val10.w*val2.w)+(val11.w*val3.w));
  }
  float4 val12 = read_imagef(data3_1x96, smp, (int2)(idx0,0));
  int alu40 = (alu0+(idx2*1152));
  write_imagef(data0_1x9216, (int2)(alu40,0), (float4)(((1/(1.0f+exp2(((alu28+(0.044715f*alu28*alu28*alu28))*-2.302208198144325f))))*alu28),((1/(1.0f+exp2(((alu29+(0.044715f*alu29*alu29*alu29))*-2.302208198144325f))))*alu29),((1/(1.0f+exp2(((alu30+(0.044715f*alu30*alu30*alu30))*-2.302208198144325f))))*alu30),((1/(1.0f+exp2(((alu31+(0.044715f*alu31*alu31*alu31))*-2.302208198144325f))))*alu31)));
  write_imagef(data0_1x9216, (int2)((alu40+96),0), (float4)(((1/(1.0f+exp2(((alu32+(0.044715f*alu32*alu32*alu32))*-2.302208198144325f))))*alu32),((1/(1.0f+exp2(((alu33+(0.044715f*alu33*alu33*alu33))*-2.302208198144325f))))*alu33),((1/(1.0f+exp2(((alu34+(0.044715f*alu34*alu34*alu34))*-2.302208198144325f))))*alu34),((1/(1.0f+exp2(((alu35+(0.044715f*alu35*alu35*alu35))*-2.302208198144325f))))*alu35)));
  write_imagef(data0_1x9216, (int2)((alu40+192),0), (float4)(((1/(1.0f+exp2(((alu36+(0.044715f*alu36*alu36*alu36))*-2.302208198144325f))))*alu36),((1/(1.0f+exp2(((alu37+(0.044715f*alu37*alu37*alu37))*-2.302208198144325f))))*alu37),((1/(1.0f+exp2(((alu38+(0.044715f*alu38*alu38*alu38))*-2.302208198144325f))))*alu38),((1/(1.0f+exp2(((alu39+(0.044715f*alu39*alu39*alu39))*-2.302208198144325f))))*alu39)));
}

__kernel void r_32_32_4_3_96_4(write_only image2d_t data0_1x3264, read_only image2d_t data1_1x9216, read_only image2d_t data2_1x12288, read_only image2d_t data3_1x32, read_only image2d_t data4_1x3264) {
    float4 val0 = read_imagef(data2_1x12288, smp, (int2)((alu12+3),0));
    int alu13 = ((idx1*288)+Ridx0);
    float4 val1 = read_imagef(data1_1x9216, smp, (int2)((alu13+96),0));
    float4 val2 = read_imagef(data1_1x9216, smp, (int2)((alu13+192),0));
    float4 val3 = read_imagef(data1_1x9216, smp, (int2)(alu13,0));
    float4 val4 = read_imagef(data2_1x12288, smp, (int2)((alu12+1),0));
    float4 val5 = read_imagef(data2_1x12288, smp, (int2)((alu12+2),0));
    float4 val6 = read_imagef(data2_1x12288, smp, (int2)(alu12,0));
  }
}

__kernel void r_8_4_128_4_3_3_3(write_only image2d_t data0_1x12480, read_only image2d_t data1_8x1536, read_only image2d_t data2_1x3072, read_only image2d_t data3_1x128) {
  int alu1 = (idx2+-1);
  float4 val0 = read_imagef(data1_8x1536, smp, (int2)(alu0,alu1));
  int alu2 = (alu0+-128);
  float4 val1 = read_imagef(data1_8x1536, smp, (int2)(alu2,alu1));
  int alu3 = (idx0*24);
  float4 val2 = read_imagef(data2_1x3072, smp, (int2)((alu3+1),0));
  float4 val3 = read_imagef(data2_1x3072, smp, (int2)((alu3+4),0));
  float4 val4 = read_imagef(data2_1x3072, smp, (int2)(alu3,0));
  float4 val5 = read_imagef(data1_8x1536, smp, (int2)(alu2,idx2));
  int alu4 = (alu0+128);
  float4 val6 = read_imagef(data1_8x1536, smp, (int2)(alu4,idx2));
  float4 val7 = read_imagef(data1_8x1536, smp, (int2)(alu4,alu1));
  float4 val8 = read_imagef(data2_1x3072, smp, (int2)((alu3+2),0));
  float4 val9 = read_imagef(data2_1x3072, smp, (int2)((alu3+3),0));
  float4 val10 = read_imagef(data1_8x1536, smp, (int2)(alu0,idx2));
  float4 val11 = read_imagef(data2_1x3072, smp, (int2)((alu3+5),0));
  int alu5 = (idx2+1);
  float4 val12 = read_imagef(data1_8x1536, smp, (int2)(alu0,alu5));
  float4 val13 = read_imagef(data1_8x1536, smp, (int2)(alu2,alu5));
  float4 val14 = read_imagef(data2_1x3072, smp, (int2)((alu3+6),0));
  float4 val15 = read_imagef(data2_1x3072, smp, (int2)((alu3+7),0));
  float4 val16 = read_imagef(data1_8x1536, smp, (int2)(alu4,alu5));
  float4 val17 = read_imagef(data2_1x3072, smp, (int2)((alu3+8),0));
  float4 val18 = read_imagef(data3_1x128, smp, (int2)(idx0,0));
  int alu6 = (alu0+256);
  float4 val19 = read_imagef(data1_8x1536, smp, (int2)(alu6,idx2));
  int alu7 = (alu0+384);
  float4 val20 = read_imagef(data1_8x1536, smp, (int2)(alu7,idx2));
  float4 val21 = read_imagef(data1_8x1536, smp, (int2)(alu6,alu1));
  float4 val22 = read_imagef(data1_8x1536, smp, (int2)(alu7,alu1));
  float4 val23 = read_imagef(data1_8x1536, smp, (int2)(alu6,alu5));
  float4 val24 = read_imagef(data1_8x1536, smp, (int2)(alu7,alu5));
  float alu8 = ((val0.x*val4.x)+(val7.x*val2.x)+(val21.x*val8.x)+(val10.x*val9.x)+(val6.x*val3.x)+(val19.x*val11.x)+(val12.x*val14.x)+(val16.x*val15.x)+(val23.x*val17.x)+val18.x);
  float alu9 = ((val0.y*val4.y)+(val7.y*val2.y)+(val21.y*val8.y)+(val10.y*val9.y)+(val6.y*val3.y)+(val19.y*val11.y)+(val12.y*val14.y)+(val16.y*val15.y)+(val23.y*val17.y)+val18.y);
  float alu10 = ((val0.z*val4.z)+(val7.z*val2.z)+(val21.z*val8.z)+(val10.z*val9.z)+(val6.z*val3.z)+(val19.z*val11.z)+(val12.z*val14.z)+(val16.z*val15.z)+(val23.z*val17.z)+val18.z);
  float alu11 = ((val0.w*val4.w)+(val7.w*val2.w)+(val21.w*val8.w)+(val10.w*val9.w)+(val6.w*val3.w)+(val19.w*val11.w)+(val12.w*val14.w)+(val16.w*val15.w)+(val23.w*val17.w)+val18.w);
  float alu12 = ((val1.x*val4.x)+(val0.x*val2.x)+(val7.x*val8.x)+(val5.x*val9.x)+(val10.x*val3.x)+(val6.x*val11.x)+(val13.x*val14.x)+(val12.x*val15.x)+(val16.x*val17.x)+val18.x);
  float alu13 = ((val1.y*val4.y)+(val0.y*val2.y)+(val7.y*val8.y)+(val5.y*val9.y)+(val10.y*val3.y)+(val6.y*val11.y)+(val13.y*val14.y)+(val12.y*val15.y)+(val16.y*val17.y)+val18.y);
  float alu14 = ((val1.z*val4.z)+(val0.z*val2.z)+(val7.z*val8.z)+(val5.z*val9.z)+(val10.z*val3.z)+(val6.z*val11.z)+(val13.z*val14.z)+(val12.z*val15.z)+(val16.z*val17.z)+val18.z);
  float alu15 = ((val1.w*val4.w)+(val0.w*val2.w)+(val7.w*val8.w)+(val5.w*val9.w)+(val10.w*val3.w)+(val6.w*val11.w)+(val13.w*val14.w)+(val12.w*val15.w)+(val16.w*val17.w)+val18.w);
  float alu16 = ((val7.x*val4.x)+(val21.x*val2.x)+(val22.x*val8.x)+(val6.x*val9.x)+(val19.x*val3.x)+(val20.x*val11.x)+(val16.x*val14.x)+(val23.x*val15.x)+(val24.x*val17.x)+val18.x);
  float alu17 = ((val7.y*val4.y)+(val21.y*val2.y)+(val22.y*val8.y)+(val6.y*val9.y)+(val19.y*val3.y)+(val20.y*val11.y)+(val16.y*val14.y)+(val23.y*val15.y)+(val24.y*val17.y)+val18.y);
  float alu18 = ((val7.z*val4.z)+(val21.z*val2.z)+(val22.z*val8.z)+(val6.z*val9.z)+(val19.z*val3.z)+(val20.z*val11.z)+(val16.z*val14.z)+(val23.z*val15.z)+(val24.z*val17.z)+val18.z);
  float alu19 = ((val7.w*val4.w)+(val21.w*val2.w)+(val22.w*val8.w)+(val6.w*val9.w)+(val19.w*val3.w)+(val20.w*val11.w)+(val16.w*val14.w)+(val23.w*val15.w)+(val24.w*val17.w)+val18.w);
  int alu20 = (idx0+(idx1*390)+(idx2*1560));
  write_imagef(data0_1x12480, (int2)(alu20,0), (float4)(((1/(1.0f+exp2(((alu12+(0.044715f*alu12*alu12*alu12))*-2.302208198144325f))))*alu12),((1/(1.0f+exp2(((alu13+(0.044715f*alu13*alu13*alu13))*-2.302208198144325f))))*alu13),((1/(1.0f+exp2(((alu14+(0.044715f*alu14*alu14*alu14))*-2.302208198144325f))))*alu14),((1/(1.0f+exp2(((alu15+(0.044715f*alu15*alu15*alu15))*-2.302208198144325f))))*alu15)));
  write_imagef(data0_1x12480, (int2)((alu20+130),0), (float4)(((1/(1.0f+exp2(((alu8+(0.044715f*alu8*alu8*alu8))*-2.302208198144325f))))*alu8),((1/(1.0f+exp2(((alu9+(0.044715f*alu9*alu9*alu9))*-2.302208198144325f))))*alu9),((1/(1.0f+exp2(((alu10+(0.044715f*alu10*alu10*alu10))*-2.302208198144325f))))*alu10),((1/(1.0f+exp2(((alu11+(0.044715f*alu11*alu11*alu11))*-2.302208198144325f))))*alu11)));
  write_imagef(data0_1x12480, (int2)((alu20+260),0), (float4)(((1/(1.0f+exp2(((alu16+(0.044715f*alu16*alu16*alu16))*-2.302208198144325f))))*alu16),((1/(1.0f+exp2(((alu17+(0.044715f*alu17*alu17*alu17))*-2.302208198144325f))))*alu17),((1/(1.0f+exp2(((alu18+(0.044715f*alu18*alu18*alu18))*-2.302208198144325f))))*alu18),((1/(1.0f+exp2(((alu19+(0.044715f*alu19*alu19*alu19))*-2.302208198144325f))))*alu19)));
}

__kernel void r_240_16_4_32_6_4(write_only image2d_t data0_1x240, read_only image2d_t data1_1x3264, read_only image2d_t data2_240x192, read_only image2d_t data3_1x240) {
  float acc0[4];
  float acc1[4];
  float acc2[4];
  __attribute__ ((aligned (16))) __local float temp0[64];
  int gidx0 = get_group_id(0); /* 240 */
  float4 val0 = read_imagef(data3_1x240, smp, (int2)(gidx0,0));
  int lidx0 = get_local_id(0); /* 16 */
  *(acc1+0) = 0.0f;
  *(acc1+1) = 0.0f;
  *(acc1+2) = 0.0f;
  *(acc1+3) = 0.0f;
  for (int Ridx2 = 0; Ridx2 < 6; Ridx2++) {
    *(acc0+0) = 0.0f;
    *(acc0+1) = 0.0f;
    *(acc0+2) = 0.0f;
    *(acc0+3) = 0.0f;
    for (int Ridx0 = 0; Ridx0 < 32; Ridx0++) {
      float4 val1 = read_imagef(data1_1x3264, smp, (int2)(((lidx0*204)+(Ridx2*34)+Ridx0),0));
      int alu8 = (Ridx0<<2);
      float4 val2 = read_imagef(data2_240x192, smp, (int2)((alu8+1),gidx0));
      float4 val3 = read_imagef(data2_240x192, smp, (int2)((alu8+2),gidx0));
      float4 val4 = read_imagef(data2_240x192, smp, (int2)((alu8+3),gidx0));
      float4 val5 = read_imagef(data2_240x192, smp, (int2)(alu8,gidx0));
      *(acc0+0) = ((*(acc0+0))+(val1.x*val5.x)+(val1.y*val2.x)+(val1.z*val3.x)+(val1.w*val4.x));
      *(acc0+1) = ((*(acc0+1))+(val1.x*val5.y)+(val1.y*val2.y)+(val1.z*val3.y)+(val1.w*val4.y));
      *(acc0+2) = ((*(acc0+2))+(val1.x*val5.z)+(val1.y*val2.z)+(val1.z*val3.z)+(val1.w*val4.z));
      *(acc0+3) = ((*(acc0+3))+(val1.x*val5.w)+(val1.y*val2.w)+(val1.z*val3.w)+(val1.w*val4.w));
    }
    float alu14 = ((*(acc0+0))+val0.x);
    float alu15 = ((*(acc0+1))+val0.y);
    float alu16 = ((*(acc0+2))+val0.z);
    float alu17 = ((*(acc0+3))+val0.w);
    *(acc1+0) = ((*(acc1+0))+((1/(1.0f+exp2(((alu14+(0.044715f*alu14*alu14*alu14))*-2.302208198144325f))))*alu14));
    *(acc1+1) = ((*(acc1+1))+((1/(1.0f+exp2(((alu15+(0.044715f*alu15*alu15*alu15))*-2.302208198144325f))))*alu15));
    *(acc1+2) = ((*(acc1+2))+((1/(1.0f+exp2(((alu16+(0.044715f*alu16*alu16*alu16))*-2.302208198144325f))))*alu16));
    *(acc1+3) = ((*(acc1+3))+((1/(1.0f+exp2(((alu17+(0.044715f*alu17*alu17*alu17))*-2.302208198144325f))))*alu17));
  }
  *((__local float4*)((temp0+(lidx0<<2)))) = (float4)((*(acc1+0)),(*(acc1+1)),(*(acc1+2)),(*(acc1+3)));
  barrier(CLK_LOCAL_MEM_FENCE);
  *(acc2+0) = 0.0f;
  *(acc2+1) = 0.0f;
  *(acc2+2) = 0.0f;
  *(acc2+3) = 0.0f;
  for (int Ridx107 = 0; Ridx107 < 16; Ridx107++) {
    float4 val6 = (*((__local float4*)((temp0+(Ridx107<<2)))));
    *(acc2+0) = ((*(acc2+0))+val6.x);
    *(acc2+1) = ((*(acc2+1))+val6.y);
    *(acc2+2) = ((*(acc2+2))+val6.z);
    *(acc2+3) = ((*(acc2+3))+val6.w);
  }
  if ((lidx0==0)) {
    write_imagef(data0_1x240, (int2)(gidx0,0), (float4)(((*(acc2+0))*0.010416666666666666f),((*(acc2+1))*0.010416666666666666f),((*(acc2+2))*0.010416666666666666f),((*(acc2+3))*0.010416666666666666f)));
  }
}

__kernel void r_320_4_240_4(write_only image2d_t data0_1x320, read_only image2d_t data1_1x240, read_only image2d_t data2_320x960, read_only image2d_t data3_1x320) {
  int idx0 = get_global_id(0); /* 320 */
  for (int Ridx0 = 0; Ridx0 < 240; Ridx0++) {
    float4 val0 = read_imagef(data1_1x240, smp, (int2)(Ridx0,0));
    int alu4 = (Ridx0<<2);
    float4 val1 = read_imagef(data2_320x960, smp, (int2)((alu4+1),idx0));
    float4 val2 = read_imagef(data2_320x960, smp, (int2)((alu4+2),idx0));
    float4 val3 = read_imagef(data2_320x960, smp, (int2)((alu4+3),idx0));
    float4 val4 = read_imagef(data2_320x960, smp, (int2)(alu4,idx0));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val4.x)+(val0.y*val4.y)+(val0.z*val4.z)+(val0.w*val4.w));
    *(acc0+1) = ((*(acc0+1))+(val0.x*val1.x)+(val0.y*val1.y)+(val0.z*val1.z)+(val0.w*val1.w));
    *(acc0+2) = ((*(acc0+2))+(val0.x*val2.x)+(val0.y*val2.y)+(val0.z*val2.z)+(val0.w*val2.w));
    *(acc0+3) = ((*(acc0+3))+(val0.x*val3.x)+(val0.y*val3.y)+(val0.z*val3.z)+(val0.w*val3.w));
  }
  float4 val5 = read_imagef(data3_1x320, smp, (int2)(idx0,0));
  float alu10 = ((*(acc0+0))+val5.x);
  float alu11 = ((*(acc0+1))+val5.y);
  float alu12 = ((*(acc0+2))+val5.z);
  float alu13 = ((*(acc0+3))+val5.w);
  write_imagef(data0_1x320, (int2)(idx0,0), (float4)(((1/(1.0f+exp2(((alu10+(0.044715f*alu10*alu10*alu10))*-2.302208198144325f))))*alu10),((1/(1.0f+exp2(((alu11+(0.044715f*alu11*alu11*alu11))*-2.302208198144325f))))*alu11),((1/(1.0f+exp2(((alu12+(0.044715f*alu12*alu12*alu12))*-2.302208198144325f))))*alu12),((1/(1.0f+exp2(((alu13+(0.044715f*alu13*alu13*alu13))*-2.302208198144325f))))*alu13)));
}

__kernel void r_128_16_4_20_4(write_only image2d_t data0_1x128, read_only image2d_t data1_1x320, read_only image2d_t data2_128x1280, read_only image2d_t data3_1x128) {
  int gidx0 = get_group_id(0); /* 128 */
  for (int Ridx0 = 0; Ridx0 < 20; Ridx0++) {
    float4 val0 = read_imagef(data1_1x320, smp, (int2)(((lidx0*20)+Ridx0),0));
    int alu4 = ((lidx0*80)+(Ridx0<<2));
    float4 val1 = read_imagef(data2_128x1280, smp, (int2)((alu4+1),gidx0));
    float4 val2 = read_imagef(data2_128x1280, smp, (int2)((alu4+2),gidx0));
    float4 val3 = read_imagef(data2_128x1280, smp, (int2)((alu4+3),gidx0));
    float4 val4 = read_imagef(data2_128x1280, smp, (int2)(alu4,gidx0));
  }
  *((__local float4*)((temp0+(lidx0<<2)))) = (float4)((*(acc0+0)),(*(acc0+1)),(*(acc0+2)),(*(acc0+3)));
  for (int Ridx105 = 0; Ridx105 < 16; Ridx105++) {
    float4 val5 = (*((__local float4*)((temp0+(Ridx105<<2)))));
    *(acc1+0) = ((*(acc1+0))+val5.x);
    *(acc1+1) = ((*(acc1+1))+val5.y);
    *(acc1+2) = ((*(acc1+2))+val5.z);
    *(acc1+3) = ((*(acc1+3))+val5.w);
  }
  float4 val6 = read_imagef(data3_1x128, smp, (int2)(gidx0,0));
    write_imagef(data0_1x128, (int2)(gidx0,0), (float4)(((*(acc1+0))+val6.x),((*(acc1+1))+val6.y),((*(acc1+2))+val6.z),((*(acc1+3))+val6.w)));
  }
}

__kernel void E_128_4(write_only image2d_t data0_1x136, read_only image2d_t data1_1x128) {
  float4 val0 = read_imagef(data1_1x128, smp, (int2)(idx0,0));
  write_imagef(data0_1x136, (int2)(idx0,0), val0);
}

__kernel void E_129_4(write_only image2d_t data0_1x1032, read_only image2d_t data1_1x128, __global float* data2_3, __global half* data3_3, __global half* data4_3) {
  int idx0 = get_global_id(0); /* 129 */
  bool alu0 = (127<idx0);
  half val0 = (alu0?*(data3_3+2):((half)(0.0f)));
  half val1 = (alu0?*(data4_3+2):((half)(0.0f)));
  half2 cast0 = (half2)(((half)(0.0f)),((half)(0.0f)));
  half2 val2 = (alu0?*((__global half2*)((data3_3+0))):cast0);
  half2 val3 = (alu0?*((__global half2*)((data4_3+0))):cast0);
  float val4 = (alu0?*(data2_3+2):0.0f);
  float2 val5 = (alu0?*((__global float2*)((data2_3+0))):(float2)(0.0f,0.0f));
  float4 val6 = read_imagef(data1_1x128, smp, (int2)(idx0,0));
  bool alu1 = (idx0<128);
  float alu2 = (alu1?0.0f:((float)(((((half)(val5.x))-val2.x)*val3.x))));
  float alu3 = (alu1?0.0f:((float)(((((half)(val5.y))-val2.y)*val3.y))));
  float alu4 = (alu1?0.0f:((float)(((((half)(val4))-val0)*val1))));
  float alu5 = (alu1?val6.w:0.0f);
  write_imagef(data0_1x1032, (int2)(idx0,0), (float4)((val6.x+alu2),(val6.y+alu3),(val6.z+alu4),alu5));
}

__kernel void r_16_16_4_8_4(write_only image2d_t data0_1x24, read_only image2d_t data1_1x136, read_only image2d_t data2_1x8320, read_only image2d_t data3_1x16) {
  int gidx0 = get_group_id(0); /* 16 */
    float4 val0 = read_imagef(data1_1x136, smp, (int2)(((lidx0<<3)+Ridx0),0));
    int alu4 = ((lidx0<<5)+(Ridx0<<2)+(gidx0*520));
    float4 val1 = read_imagef(data2_1x8320, smp, (int2)((alu4+1),0));
    float4 val2 = read_imagef(data2_1x8320, smp, (int2)((alu4+2),0));
    float4 val3 = read_imagef(data2_1x8320, smp, (int2)((alu4+3),0));
    float4 val4 = read_imagef(data2_1x8320, smp, (int2)(alu4,0));
  }
  for (int Ridx106 = 0; Ridx106 < 16; Ridx106++) {
    float4 val5 = (*((__local float4*)((temp0+(Ridx106<<2)))));
  }
  float4 val6 = read_imagef(data3_1x16, smp, (int2)(gidx0,0));
  float alu21 = ((*(acc1+0))+val6.x);
  float alu22 = ((*(acc1+1))+val6.y);
  float alu23 = ((*(acc1+2))+val6.z);
  float alu24 = ((*(acc1+3))+val6.w);
  float alu25 = ((0.0f<alu21)?alu21:0.0f);
  float alu26 = ((0.0f<alu22)?alu22:0.0f);
  float alu27 = ((0.0f<alu23)?alu23:0.0f);
  float alu28 = ((0.0f<alu24)?alu24:0.0f);
    write_imagef(data0_1x24, (int2)(gidx0,0), (float4)(alu25,alu26,alu27,alu28));
  }
}

__kernel void r_8_16_4_8_4(write_only image2d_t data0_1x16, read_only image2d_t data1_1x136, read_only image2d_t data2_1x4160, read_only image2d_t data3_1x8) {
  int gidx0 = get_group_id(0); /* 8 */
    float4 val1 = read_imagef(data2_1x4160, smp, (int2)((alu4+1),0));
    float4 val2 = read_imagef(data2_1x4160, smp, (int2)((alu4+2),0));
    float4 val3 = read_imagef(data2_1x4160, smp, (int2)((alu4+3),0));
    float4 val4 = read_imagef(data2_1x4160, smp, (int2)(alu4,0));
  }
  }
  float4 val6 = read_imagef(data3_1x8, smp, (int2)(gidx0,0));
    write_imagef(data0_1x16, (int2)(gidx0,0), (float4)(alu25,alu26,alu27,alu28));
  }
}

__kernel void r_12_16_4_8_4(write_only image2d_t data0_1x24, read_only image2d_t data1_1x136, read_only image2d_t data2_1x6240, __global half* data3_48) {
  int gidx0 = get_group_id(0); /* 12 */
    float4 val1 = read_imagef(data2_1x6240, smp, (int2)((alu4+1),0));
    float4 val2 = read_imagef(data2_1x6240, smp, (int2)((alu4+2),0));
    float4 val3 = read_imagef(data2_1x6240, smp, (int2)((alu4+3),0));
    float4 val4 = read_imagef(data2_1x6240, smp, (int2)(alu4,0));
  }
  }
  half4 val6 = (*((__global half4*)((data3_48+(gidx0<<2)))));
  float alu21 = ((*(acc1+0))+((float)(val6.x)));
  float alu22 = ((*(acc1+1))+((float)(val6.y)));
  float alu23 = ((*(acc1+2))+((float)(val6.z)));
  float alu24 = ((*(acc1+3))+((float)(val6.w)));
  }
}

__kernel void r_12_4_129_4(write_only image2d_t data0_1x24, read_only image2d_t data1_1x1032, read_only image2d_t data2_1x12384, __global half* data3_48) {
  int idx0 = get_global_id(0); /* 12 */
  for (int Ridx0 = 0; Ridx0 < 129; Ridx0++) {
    float4 val0 = read_imagef(data1_1x1032, smp, (int2)(Ridx0,0));
    int alu4 = ((idx0*1032)+(Ridx0<<2));
    float4 val1 = read_imagef(data2_1x12384, smp, (int2)((alu4+1),0));
    float4 val2 = read_imagef(data2_1x12384, smp, (int2)((alu4+2),0));
    float4 val3 = read_imagef(data2_1x12384, smp, (int2)((alu4+3),0));
    float4 val4 = read_imagef(data2_1x12384, smp, (int2)(alu4,0));
  }
  half4 val5 = (*((__global half4*)((data3_48+(idx0<<2)))));
  float alu10 = ((*(acc0+0))+((float)(val5.x)));
  float alu11 = ((*(acc0+1))+((float)(val5.y)));
  float alu12 = ((*(acc0+2))+((float)(val5.z)));
  float alu13 = ((*(acc0+3))+((float)(val5.w)));
  float alu14 = ((0.0f<alu10)?alu10:0.0f);
  float alu15 = ((0.0f<alu11)?alu11:0.0f);
  float alu16 = ((0.0f<alu12)?alu12:0.0f);
  float alu17 = ((0.0f<alu13)?alu13:0.0f);
  write_imagef(data0_1x24, (int2)(idx0,0), (float4)(alu14,alu15,alu16,alu17));
}

__kernel void r_8_4_129_4(write_only image2d_t data0_1x16, read_only image2d_t data1_1x1032, read_only image2d_t data2_1x8256, read_only image2d_t data3_1x8) {
    float4 val1 = read_imagef(data2_1x8256, smp, (int2)((alu4+1),0));
    float4 val2 = read_imagef(data2_1x8256, smp, (int2)((alu4+2),0));
    float4 val3 = read_imagef(data2_1x8256, smp, (int2)((alu4+3),0));
    float4 val4 = read_imagef(data2_1x8256, smp, (int2)(alu4,0));
  }
  float4 val5 = read_imagef(data3_1x8, smp, (int2)(idx0,0));
  write_imagef(data0_1x16, (int2)(idx0,0), (float4)(alu14,alu15,alu16,alu17));
}

__kernel void r_12_16_4_4(write_only image2d_t data0_1x24, read_only image2d_t data1_1x24, read_only image2d_t data2_1x864, __global half* data3_48) {
  float4 val0 = read_imagef(data1_1x24, smp, (int2)(lidx0,0));
  int alu0 = (lidx0<<2);
  int alu1 = ((gidx0*72)+alu0);
  float4 val1 = read_imagef(data2_1x864, smp, (int2)((alu1+1),0));
  float4 val2 = read_imagef(data2_1x864, smp, (int2)((alu1+2),0));
  float4 val3 = read_imagef(data2_1x864, smp, (int2)((alu1+3),0));
  float4 val4 = read_imagef(data2_1x864, smp, (int2)(alu1,0));
  *((__local float4*)((temp0+alu0))) = (float4)(((val0.x*val4.x)+(val0.y*val4.y)+(val0.z*val4.z)+(val0.w*val4.w)),((val0.x*val1.x)+(val0.y*val1.y)+(val0.z*val1.z)+(val0.w*val1.w)),((val0.x*val2.x)+(val0.y*val2.y)+(val0.z*val2.z)+(val0.w*val2.w)),((val0.x*val3.x)+(val0.y*val3.y)+(val0.z*val3.z)+(val0.w*val3.w)));
    *(acc0+0) = ((*(acc0+0))+val5.x);
    *(acc0+1) = ((*(acc0+1))+val5.y);
    *(acc0+2) = ((*(acc0+2))+val5.z);
    *(acc0+3) = ((*(acc0+3))+val5.w);
  }
  float alu13 = ((*(acc0+0))+((float)(val6.x)));
  float alu14 = ((*(acc0+1))+((float)(val6.y)));
  float alu15 = ((*(acc0+2))+((float)(val6.z)));
  float alu16 = ((*(acc0+3))+((float)(val6.w)));
  float alu18 = ((0.0f<alu14)?alu14:0.0f);
  float alu19 = ((0.0f<alu15)?alu15:0.0f);
  float alu20 = ((0.0f<alu16)?alu16:0.0f);
    write_imagef(data0_1x24, (int2)(gidx0,0), (float4)(alu17,alu18,alu19,alu20));
  }
}

__kernel void r_4_6_8_4(write_only image2d_t data0_1x24, read_only image2d_t data1_1x16, read_only image2d_t data2_1x240, __global half* data3_24) {
  float acc0[24];
  *(acc0+12) = 0.0f;
  *(acc0+13) = 0.0f;
  *(acc0+14) = 0.0f;
  *(acc0+15) = 0.0f;
  *(acc0+16) = 0.0f;
  *(acc0+17) = 0.0f;
  *(acc0+18) = 0.0f;
  *(acc0+19) = 0.0f;
  *(acc0+20) = 0.0f;
  *(acc0+21) = 0.0f;
  *(acc0+22) = 0.0f;
  *(acc0+23) = 0.0f;
    float4 val0 = read_imagef(data1_1x16, smp, (int2)(Ridx0,0));
    int alu24 = (Ridx0<<2);
    float4 val1 = read_imagef(data2_1x240, smp, (int2)((alu24+1),0));
    float4 val2 = read_imagef(data2_1x240, smp, (int2)((alu24+2),0));
    float4 val3 = read_imagef(data2_1x240, smp, (int2)((alu24+3),0));
    float4 val4 = read_imagef(data2_1x240, smp, (int2)((alu24+40),0));
    float4 val5 = read_imagef(data2_1x240, smp, (int2)((alu24+41),0));
    float4 val6 = read_imagef(data2_1x240, smp, (int2)((alu24+42),0));
    float4 val7 = read_imagef(data2_1x240, smp, (int2)((alu24+43),0));
    float4 val8 = read_imagef(data2_1x240, smp, (int2)((alu24+80),0));
    float4 val9 = read_imagef(data2_1x240, smp, (int2)((alu24+81),0));
    float4 val10 = read_imagef(data2_1x240, smp, (int2)((alu24+82),0));
    float4 val11 = read_imagef(data2_1x240, smp, (int2)((alu24+83),0));
    float4 val12 = read_imagef(data2_1x240, smp, (int2)((alu24+120),0));
    float4 val13 = read_imagef(data2_1x240, smp, (int2)((alu24+121),0));
    float4 val14 = read_imagef(data2_1x240, smp, (int2)((alu24+122),0));
    float4 val15 = read_imagef(data2_1x240, smp, (int2)((alu24+123),0));
    float4 val16 = read_imagef(data2_1x240, smp, (int2)((alu24+160),0));
    float4 val17 = read_imagef(data2_1x240, smp, (int2)((alu24+161),0));
    float4 val18 = read_imagef(data2_1x240, smp, (int2)((alu24+162),0));
    float4 val19 = read_imagef(data2_1x240, smp, (int2)((alu24+163),0));
    float4 val20 = read_imagef(data2_1x240, smp, (int2)((alu24+200),0));
    float4 val21 = read_imagef(data2_1x240, smp, (int2)((alu24+201),0));
    float4 val22 = read_imagef(data2_1x240, smp, (int2)((alu24+202),0));
    float4 val23 = read_imagef(data2_1x240, smp, (int2)((alu24+203),0));
    float4 val24 = read_imagef(data2_1x240, smp, (int2)(alu24,0));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val24.x)+(val0.y*val24.y)+(val0.z*val24.z)+(val0.w*val24.w));
    *(acc0+1) = ((*(acc0+1))+(val0.x*val4.x)+(val0.y*val4.y)+(val0.z*val4.z)+(val0.w*val4.w));
    *(acc0+2) = ((*(acc0+2))+(val0.x*val8.x)+(val0.y*val8.y)+(val0.z*val8.z)+(val0.w*val8.w));
    *(acc0+3) = ((*(acc0+3))+(val0.x*val12.x)+(val0.y*val12.y)+(val0.z*val12.z)+(val0.w*val12.w));
    *(acc0+4) = ((*(acc0+4))+(val0.x*val16.x)+(val0.y*val16.y)+(val0.z*val16.z)+(val0.w*val16.w));
    *(acc0+5) = ((*(acc0+5))+(val0.x*val20.x)+(val0.y*val20.y)+(val0.z*val20.z)+(val0.w*val20.w));
    *(acc0+6) = ((*(acc0+6))+(val0.x*val1.x)+(val0.y*val1.y)+(val0.z*val1.z)+(val0.w*val1.w));
    *(acc0+7) = ((*(acc0+7))+(val0.x*val5.x)+(val0.y*val5.y)+(val0.z*val5.z)+(val0.w*val5.w));
    *(acc0+8) = ((*(acc0+8))+(val0.x*val9.x)+(val0.y*val9.y)+(val0.z*val9.z)+(val0.w*val9.w));
    *(acc0+9) = ((*(acc0+9))+(val0.x*val13.x)+(val0.y*val13.y)+(val0.z*val13.z)+(val0.w*val13.w));
    *(acc0+10) = ((*(acc0+10))+(val0.x*val17.x)+(val0.y*val17.y)+(val0.z*val17.z)+(val0.w*val17.w));
    *(acc0+11) = ((*(acc0+11))+(val0.x*val21.x)+(val0.y*val21.y)+(val0.z*val21.z)+(val0.w*val21.w));
    *(acc0+12) = ((*(acc0+12))+(val0.x*val2.x)+(val0.y*val2.y)+(val0.z*val2.z)+(val0.w*val2.w));
    *(acc0+13) = ((*(acc0+13))+(val0.x*val6.x)+(val0.y*val6.y)+(val0.z*val6.z)+(val0.w*val6.w));
    *(acc0+14) = ((*(acc0+14))+(val0.x*val10.x)+(val0.y*val10.y)+(val0.z*val10.z)+(val0.w*val10.w));
    *(acc0+15) = ((*(acc0+15))+(val0.x*val14.x)+(val0.y*val14.y)+(val0.z*val14.z)+(val0.w*val14.w));
    *(acc0+16) = ((*(acc0+16))+(val0.x*val18.x)+(val0.y*val18.y)+(val0.z*val18.z)+(val0.w*val18.w));
    *(acc0+17) = ((*(acc0+17))+(val0.x*val22.x)+(val0.y*val22.y)+(val0.z*val22.z)+(val0.w*val22.w));
    *(acc0+18) = ((*(acc0+18))+(val0.x*val3.x)+(val0.y*val3.y)+(val0.z*val3.z)+(val0.w*val3.w));
    *(acc0+19) = ((*(acc0+19))+(val0.x*val7.x)+(val0.y*val7.y)+(val0.z*val7.z)+(val0.w*val7.w));
    *(acc0+20) = ((*(acc0+20))+(val0.x*val11.x)+(val0.y*val11.y)+(val0.z*val11.z)+(val0.w*val11.w));
    *(acc0+21) = ((*(acc0+21))+(val0.x*val15.x)+(val0.y*val15.y)+(val0.z*val15.z)+(val0.w*val15.w));
    *(acc0+22) = ((*(acc0+22))+(val0.x*val19.x)+(val0.y*val19.y)+(val0.z*val19.z)+(val0.w*val19.w));
    *(acc0+23) = ((*(acc0+23))+(val0.x*val23.x)+(val0.y*val23.y)+(val0.z*val23.z)+(val0.w*val23.w));
  }
  half4 val25 = (*((__global half4*)((data3_24+0))));
  half4 val26 = (*((__global half4*)((data3_24+4))));
  half4 val27 = (*((__global half4*)((data3_24+8))));
  half4 val28 = (*((__global half4*)((data3_24+12))));
  half4 val29 = (*((__global half4*)((data3_24+16))));
  half4 val30 = (*((__global half4*)((data3_24+20))));
  float alu50 = ((*(acc0+0))+((float)(val25.x)));
  float alu51 = ((*(acc0+6))+((float)(val25.y)));
  float alu52 = ((*(acc0+12))+((float)(val25.z)));
  float alu53 = ((*(acc0+18))+((float)(val25.w)));
  float alu54 = ((0.0f<alu50)?alu50:0.0f);
  float alu55 = ((0.0f<alu51)?alu51:0.0f);
  float alu56 = ((0.0f<alu52)?alu52:0.0f);
  float alu57 = ((0.0f<alu53)?alu53:0.0f);
  float alu58 = ((*(acc0+1))+((float)(val26.x)));
  float alu59 = ((*(acc0+7))+((float)(val26.y)));
  float alu60 = ((*(acc0+13))+((float)(val26.z)));
  float alu61 = ((*(acc0+19))+((float)(val26.w)));
  float alu62 = ((0.0f<alu58)?alu58:0.0f);
  float alu63 = ((0.0f<alu59)?alu59:0.0f);
  float alu64 = ((0.0f<alu60)?alu60:0.0f);
  float alu65 = ((0.0f<alu61)?alu61:0.0f);
  float alu66 = ((*(acc0+2))+((float)(val27.x)));
  float alu67 = ((*(acc0+8))+((float)(val27.y)));
  float alu68 = ((*(acc0+14))+((float)(val27.z)));
  float alu69 = ((*(acc0+20))+((float)(val27.w)));
  float alu70 = ((0.0f<alu66)?alu66:0.0f);
  float alu71 = ((0.0f<alu67)?alu67:0.0f);
  float alu72 = ((0.0f<alu68)?alu68:0.0f);
  float alu73 = ((0.0f<alu69)?alu69:0.0f);
  float alu74 = ((*(acc0+3))+((float)(val28.x)));
  float alu75 = ((*(acc0+9))+((float)(val28.y)));
  float alu76 = ((*(acc0+15))+((float)(val28.z)));
  float alu77 = ((*(acc0+21))+((float)(val28.w)));
  float alu78 = ((0.0f<alu74)?alu74:0.0f);
  float alu79 = ((0.0f<alu75)?alu75:0.0f);
  float alu80 = ((0.0f<alu76)?alu76:0.0f);
  float alu81 = ((0.0f<alu77)?alu77:0.0f);
  float alu82 = ((*(acc0+4))+((float)(val29.x)));
  float alu83 = ((*(acc0+10))+((float)(val29.y)));
  float alu84 = ((*(acc0+16))+((float)(val29.z)));
  float alu85 = ((*(acc0+22))+((float)(val29.w)));
  float alu86 = ((0.0f<alu82)?alu82:0.0f);
  float alu87 = ((0.0f<alu83)?alu83:0.0f);
  float alu88 = ((0.0f<alu84)?alu84:0.0f);
  float alu89 = ((0.0f<alu85)?alu85:0.0f);
  float alu90 = ((*(acc0+5))+((float)(val30.x)));
  float alu91 = ((*(acc0+11))+((float)(val30.y)));
  float alu92 = ((*(acc0+17))+((float)(val30.z)));
  float alu93 = ((*(acc0+23))+((float)(val30.w)));
  float alu94 = ((0.0f<alu90)?alu90:0.0f);
  float alu95 = ((0.0f<alu91)?alu91:0.0f);
  float alu96 = ((0.0f<alu92)?alu92:0.0f);
  float alu97 = ((0.0f<alu93)?alu93:0.0f);
  write_imagef(data0_1x24, (int2)(0,0), (float4)(alu54,alu55,alu56,alu57));
  write_imagef(data0_1x24, (int2)(1,0), (float4)(alu62,alu63,alu64,alu65));
  write_imagef(data0_1x24, (int2)(2,0), (float4)(alu70,alu71,alu72,alu73));
  write_imagef(data0_1x24, (int2)(3,0), (float4)(alu78,alu79,alu80,alu81));
  write_imagef(data0_1x24, (int2)(4,0), (float4)(alu86,alu87,alu88,alu89));
  write_imagef(data0_1x24, (int2)(5,0), (float4)(alu94,alu95,alu96,alu97));
}

__kernel void r_8_4_12_4(write_only image2d_t data0_1x16, read_only image2d_t data1_1x24, read_only image2d_t data2_1x384, read_only image2d_t data3_1x8) {
  for (int Ridx0 = 0; Ridx0 < 12; Ridx0++) {
    float4 val0 = read_imagef(data1_1x24, smp, (int2)(Ridx0,0));
    int alu4 = ((idx0*48)+(Ridx0<<2));
    float4 val1 = read_imagef(data2_1x384, smp, (int2)((alu4+1),0));
    float4 val2 = read_imagef(data2_1x384, smp, (int2)((alu4+2),0));
    float4 val3 = read_imagef(data2_1x384, smp, (int2)((alu4+3),0));
    float4 val4 = read_imagef(data2_1x384, smp, (int2)(alu4,0));
  }
}

__kernel void r_4_4_6_4(write_only image2d_t data0_1x8, read_only image2d_t data1_1x24, read_only image2d_t data2_1x96, __global half* data3_16) {
  float acc0[16];
  for (int Ridx0 = 0; Ridx0 < 6; Ridx0++) {
    int alu16 = (Ridx0<<2);
    float4 val1 = read_imagef(data2_1x96, smp, (int2)((alu16+1),0));
    float4 val2 = read_imagef(data2_1x96, smp, (int2)((alu16+2),0));
    float4 val3 = read_imagef(data2_1x96, smp, (int2)((alu16+3),0));
    float4 val4 = read_imagef(data2_1x96, smp, (int2)((alu16+24),0));
    float4 val5 = read_imagef(data2_1x96, smp, (int2)((alu16+25),0));
    float4 val6 = read_imagef(data2_1x96, smp, (int2)((alu16+26),0));
    float4 val7 = read_imagef(data2_1x96, smp, (int2)((alu16+27),0));
    float4 val8 = read_imagef(data2_1x96, smp, (int2)((alu16+48),0));
    float4 val9 = read_imagef(data2_1x96, smp, (int2)((alu16+49),0));
    float4 val10 = read_imagef(data2_1x96, smp, (int2)((alu16+50),0));
    float4 val11 = read_imagef(data2_1x96, smp, (int2)((alu16+51),0));
    float4 val12 = read_imagef(data2_1x96, smp, (int2)((alu16+72),0));
    float4 val13 = read_imagef(data2_1x96, smp, (int2)((alu16+73),0));
    float4 val14 = read_imagef(data2_1x96, smp, (int2)((alu16+74),0));
    float4 val15 = read_imagef(data2_1x96, smp, (int2)((alu16+75),0));
    float4 val16 = read_imagef(data2_1x96, smp, (int2)(alu16,0));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val16.x)+(val0.y*val16.y)+(val0.z*val16.z)+(val0.w*val16.w));
    *(acc0+4) = ((*(acc0+4))+(val0.x*val1.x)+(val0.y*val1.y)+(val0.z*val1.z)+(val0.w*val1.w));
    *(acc0+5) = ((*(acc0+5))+(val0.x*val5.x)+(val0.y*val5.y)+(val0.z*val5.z)+(val0.w*val5.w));
    *(acc0+6) = ((*(acc0+6))+(val0.x*val9.x)+(val0.y*val9.y)+(val0.z*val9.z)+(val0.w*val9.w));
    *(acc0+7) = ((*(acc0+7))+(val0.x*val13.x)+(val0.y*val13.y)+(val0.z*val13.z)+(val0.w*val13.w));
    *(acc0+8) = ((*(acc0+8))+(val0.x*val2.x)+(val0.y*val2.y)+(val0.z*val2.z)+(val0.w*val2.w));
    *(acc0+9) = ((*(acc0+9))+(val0.x*val6.x)+(val0.y*val6.y)+(val0.z*val6.z)+(val0.w*val6.w));
    *(acc0+10) = ((*(acc0+10))+(val0.x*val10.x)+(val0.y*val10.y)+(val0.z*val10.z)+(val0.w*val10.w));
    *(acc0+11) = ((*(acc0+11))+(val0.x*val14.x)+(val0.y*val14.y)+(val0.z*val14.z)+(val0.w*val14.w));
    *(acc0+12) = ((*(acc0+12))+(val0.x*val3.x)+(val0.y*val3.y)+(val0.z*val3.z)+(val0.w*val3.w));
    *(acc0+13) = ((*(acc0+13))+(val0.x*val7.x)+(val0.y*val7.y)+(val0.z*val7.z)+(val0.w*val7.w));
    *(acc0+14) = ((*(acc0+14))+(val0.x*val11.x)+(val0.y*val11.y)+(val0.z*val11.z)+(val0.w*val11.w));
    *(acc0+15) = ((*(acc0+15))+(val0.x*val15.x)+(val0.y*val15.y)+(val0.z*val15.z)+(val0.w*val15.w));
  }
  half4 val17 = (*((__global half4*)((data3_16+0))));
  half4 val18 = (*((__global half4*)((data3_16+4))));
  half4 val19 = (*((__global half4*)((data3_16+8))));
  half4 val20 = (*((__global half4*)((data3_16+12))));
  float alu34 = ((*(acc0+0))+((float)(val17.x)));
  float alu35 = ((*(acc0+4))+((float)(val17.y)));
  float alu36 = ((*(acc0+8))+((float)(val17.z)));
  float alu37 = ((*(acc0+12))+((float)(val17.w)));
  float alu38 = ((0.0f<alu34)?alu34:0.0f);
  float alu39 = ((0.0f<alu35)?alu35:0.0f);
  float alu40 = ((0.0f<alu36)?alu36:0.0f);
  float alu41 = ((0.0f<alu37)?alu37:0.0f);
  float alu42 = ((*(acc0+1))+((float)(val18.x)));
  float alu43 = ((*(acc0+5))+((float)(val18.y)));
  float alu44 = ((*(acc0+9))+((float)(val18.z)));
  float alu45 = ((*(acc0+13))+((float)(val18.w)));
  float alu46 = ((0.0f<alu42)?alu42:0.0f);
  float alu47 = ((0.0f<alu43)?alu43:0.0f);
  float alu48 = ((0.0f<alu44)?alu44:0.0f);
  float alu49 = ((0.0f<alu45)?alu45:0.0f);
  float alu50 = ((*(acc0+2))+((float)(val19.x)));
  float alu51 = ((*(acc0+6))+((float)(val19.y)));
  float alu52 = ((*(acc0+10))+((float)(val19.z)));
  float alu53 = ((*(acc0+14))+((float)(val19.w)));
  float alu58 = ((*(acc0+3))+((float)(val20.x)));
  float alu59 = ((*(acc0+7))+((float)(val20.y)));
  float alu60 = ((*(acc0+11))+((float)(val20.z)));
  float alu61 = ((*(acc0+15))+((float)(val20.w)));
  write_imagef(data0_1x8, (int2)(0,0), (float4)(alu38,alu39,alu40,alu41));
  write_imagef(data0_1x8, (int2)(1,0), (float4)(alu46,alu47,alu48,alu49));
  write_imagef(data0_1x8, (int2)(2,0), (float4)(alu54,alu55,alu56,alu57));
  write_imagef(data0_1x8, (int2)(3,0), (float4)(alu62,alu63,alu64,alu65));
}

__kernel void r_4_4_8_4(write_only image2d_t data0_1x8, read_only image2d_t data1_1x16, read_only image2d_t data2_1x160, __global half* data3_16) {
    float4 val1 = read_imagef(data2_1x160, smp, (int2)((alu16+1),0));
    float4 val2 = read_imagef(data2_1x160, smp, (int2)((alu16+2),0));
    float4 val3 = read_imagef(data2_1x160, smp, (int2)((alu16+3),0));
    float4 val4 = read_imagef(data2_1x160, smp, (int2)((alu16+40),0));
    float4 val5 = read_imagef(data2_1x160, smp, (int2)((alu16+41),0));
    float4 val6 = read_imagef(data2_1x160, smp, (int2)((alu16+42),0));
    float4 val7 = read_imagef(data2_1x160, smp, (int2)((alu16+43),0));
    float4 val8 = read_imagef(data2_1x160, smp, (int2)((alu16+80),0));
    float4 val9 = read_imagef(data2_1x160, smp, (int2)((alu16+81),0));
    float4 val10 = read_imagef(data2_1x160, smp, (int2)((alu16+82),0));
    float4 val11 = read_imagef(data2_1x160, smp, (int2)((alu16+83),0));
    float4 val12 = read_imagef(data2_1x160, smp, (int2)((alu16+120),0));
    float4 val13 = read_imagef(data2_1x160, smp, (int2)((alu16+121),0));
    float4 val14 = read_imagef(data2_1x160, smp, (int2)((alu16+122),0));
    float4 val15 = read_imagef(data2_1x160, smp, (int2)((alu16+123),0));
    float4 val16 = read_imagef(data2_1x160, smp, (int2)(alu16,0));
  }
}

__kernel void r_3_4_4(__global float* data0_3, read_only image2d_t data1_1x8, read_only image2d_t data2_1x24, __global half* data3_3) {
  int idx0 = get_global_id(0); /* 3 */
  half val0 = (*(data3_3+idx0));
  float4 val1 = read_imagef(data1_1x8, smp, (int2)(0,0));
  float4 val2 = read_imagef(data2_1x24, smp, (int2)(idx0,0));
  float4 val3 = read_imagef(data1_1x8, smp, (int2)(1,0));
  float4 val4 = read_imagef(data2_1x24, smp, (int2)((idx0+4),0));
  float4 val5 = read_imagef(data1_1x8, smp, (int2)(2,0));
  float4 val6 = read_imagef(data2_1x24, smp, (int2)((idx0+8),0));
  float4 val7 = read_imagef(data1_1x8, smp, (int2)(3,0));
  float4 val8 = read_imagef(data2_1x24, smp, (int2)((idx0+12),0));
  *(data0_3+idx0) = ((val1.x*val2.x)+(val1.y*val2.y)+(val1.z*val2.z)+(val1.w*val2.w)+(val3.x*val4.x)+(val3.y*val4.y)+(val3.z*val4.z)+(val3.w*val4.w)+(val5.x*val6.x)+(val5.y*val6.y)+(val5.z*val6.z)+(val5.w*val6.w)+(val7.x*val8.x)+(val7.y*val8.y)+(val7.z*val8.z)+(val7.w*val8.w)+((float)(val0)));
}

__kernel void r_2_4_4(__global float* data0_2, read_only image2d_t data1_1x8, read_only image2d_t data2_1x24, __global half* data3_2) {
  int idx0 = get_global_id(0); /* 2 */
  half val0 = (*(data3_2+idx0));
  *(data0_2+idx0) = ((val1.x*val2.x)+(val1.y*val2.y)+(val1.z*val2.z)+(val1.w*val2.w)+(val3.x*val4.x)+(val3.y*val4.y)+(val3.z*val4.z)+(val3.w*val4.w)+(val5.x*val6.x)+(val5.y*val6.y)+(val5.z*val6.z)+(val5.w*val6.w)+(val7.x*val8.x)+(val7.y*val8.y)+(val7.z*val8.z)+(val7.w*val8.w)+((float)(val0)));
}

__kernel void r_553_8_4_6_4_8_4_6_4_4_4_4_4_4_4_4_4_4_4(__global float* data0_553, read_only image2d_t data1_1x16, read_only image2d_t data2_1x120, __global half* data3_12, read_only image2d_t data4_1x8, read_only image2d_t data5_1x24, __global half* data6_1, __global float* data7_3, __global float* data8_2, read_only image2d_t data9_1x24, read_only image2d_t data10_1x24, __global half* data11_1, read_only image2d_t data12_1x8, read_only image2d_t data13_1x24, __global half* data14_1, read_only image2d_t data15_1x16, read_only image2d_t data16_1x120, __global half* data17_12, read_only image2d_t data18_1x8, read_only image2d_t data19_1x24, __global half* data20_1, __global float* data21_3, __global float* data22_2, read_only image2d_t data23_1x24, read_only image2d_t data24_1x24, __global half* data25_1, read_only image2d_t data26_1x8, read_only image2d_t data27_1x24, __global half* data28_1, read_only image2d_t data29_1x8, read_only image2d_t data30_1x24, __global half* data31_1, __global float* data32_512) {
  float acc0[1];
  float acc1[1];
  float acc2[1];
  float acc3[1];
  float acc4[1];
  float acc5[1];
  float acc6[1];
  float acc7[1];
  float acc8[1];
  int idx0 = get_global_id(0); /* 553 */
  int alu0 = ((idx0>>2)*40);
  bool alu1 = (idx0<12);
  int alu2 = (idx0&3);
  *(acc8+0) = 0.0f;
    float4 val1 = (alu1?read_imagef(data2_1x120, smp, (int2)((alu0+(Ridx0<<2)+alu2),0)):cast0);
    *(acc8+0) = ((*(acc8+0))+(val0.x*val1.x)+(val0.y*val1.y)+(val0.z*val1.z)+(val0.w*val1.w));
  }
  for (int Ridx2 = 0; Ridx2 < 4; Ridx2++) {
    float4 val2 = read_imagef(data4_1x8, smp, (int2)(Ridx2,0));
    float4 val3 = read_imagef(data5_1x24, smp, (int2)((Ridx2<<2),0));
    *(acc0+0) = ((*(acc0+0))+(val2.x*val3.x)+(val2.y*val3.y)+(val2.z*val3.z)+(val2.w*val3.w));
  }
  for (int Ridx4 = 0; Ridx4 < 6; Ridx4++) {
    float4 val4 = read_imagef(data9_1x24, smp, (int2)(Ridx4,0));
    float4 val5 = read_imagef(data10_1x24, smp, (int2)((Ridx4<<2),0));
    *(acc1+0) = ((*(acc1+0))+(val4.x*val5.x)+(val4.y*val5.y)+(val4.z*val5.z)+(val4.w*val5.w));
  }
  for (int Ridx6 = 0; Ridx6 < 4; Ridx6++) {
    float4 val6 = read_imagef(data12_1x8, smp, (int2)(Ridx6,0));
    float4 val7 = read_imagef(data13_1x24, smp, (int2)((Ridx6<<2),0));
    *(acc2+0) = ((*(acc2+0))+(val6.x*val7.x)+(val6.y*val7.y)+(val6.z*val7.z)+(val6.w*val7.w));
  }
  bool alu15 = ((19<idx0)&(idx0<32));
  *(acc7+0) = 0.0f;
  for (int Ridx8 = 0; Ridx8 < 8; Ridx8++) {
    float4 val8 = read_imagef(data15_1x16, smp, (int2)(Ridx8,0));
    float4 val9 = (alu15?read_imagef(data16_1x120, smp, (int2)(((Ridx8<<2)+alu2+alu0+-200),0)):cast0);
    *(acc7+0) = ((*(acc7+0))+(val8.x*val9.x)+(val8.y*val9.y)+(val8.z*val9.z)+(val8.w*val9.w));
  }
  *(acc3+0) = 0.0f;
  for (int Ridx10 = 0; Ridx10 < 4; Ridx10++) {
    float4 val10 = read_imagef(data18_1x8, smp, (int2)(Ridx10,0));
    float4 val11 = read_imagef(data19_1x24, smp, (int2)((Ridx10<<2),0));
    *(acc3+0) = ((*(acc3+0))+(val10.x*val11.x)+(val10.y*val11.y)+(val10.z*val11.z)+(val10.w*val11.w));
  }
  *(acc4+0) = 0.0f;
  for (int Ridx12 = 0; Ridx12 < 6; Ridx12++) {
    float4 val12 = read_imagef(data23_1x24, smp, (int2)(Ridx12,0));
    float4 val13 = read_imagef(data24_1x24, smp, (int2)((Ridx12<<2),0));
    *(acc4+0) = ((*(acc4+0))+(val12.x*val13.x)+(val12.y*val13.y)+(val12.z*val13.z)+(val12.w*val13.w));
  }
  *(acc5+0) = 0.0f;
  for (int Ridx14 = 0; Ridx14 < 4; Ridx14++) {
    float4 val14 = read_imagef(data26_1x8, smp, (int2)(Ridx14,0));
    float4 val15 = read_imagef(data27_1x24, smp, (int2)((Ridx14<<2),0));
    *(acc5+0) = ((*(acc5+0))+(val14.x*val15.x)+(val14.y*val15.y)+(val14.z*val15.z)+(val14.w*val15.w));
  }
  *(acc6+0) = 0.0f;
  for (int Ridx16 = 0; Ridx16 < 4; Ridx16++) {
    float4 val16 = read_imagef(data29_1x8, smp, (int2)(Ridx16,0));
    float4 val17 = read_imagef(data30_1x24, smp, (int2)((Ridx16<<2),0));
    *(acc6+0) = ((*(acc6+0))+(val16.x*val17.x)+(val16.y*val17.y)+(val16.z*val17.z)+(val16.w*val17.w));
  }
  half val18 = (alu1?*(data3_12+idx0):((half)(0.0f)));
  half val19 = (*(data6_1+0));
  half val20 = (*(data11_1+0));
  half val21 = (*(data14_1+0));
  half val22 = (alu15?*(data17_12+(idx0+-20)):((half)(0.0f)));
  half val23 = (*(data20_1+0));
  half val24 = (*(data25_1+0));
  half val25 = (*(data28_1+0));
  half val26 = (*(data31_1+0));
  float val27 = (*(data7_3+0));
  float val28 = (*(data7_3+1));
  float val29 = (*(data7_3+2));
  float val30 = (*(data8_2+0));
  float val31 = (*(data8_2+1));
  float val32 = (*(data21_3+0));
  float val33 = (*(data21_3+1));
  float val34 = (*(data21_3+2));
  float val35 = (*(data22_2+0));
  float val36 = (*(data22_2+1));
  float val37 = ((40<idx0)?*(data32_512+(idx0+-41)):0.0f);
  float alu31 = (alu1?((*(acc8+0))+((float)(val18))):0.0f);
  float alu32 = ((idx0==12)?((*(acc0+0))+((float)(val19))):0.0f);
  float alu33 = ((idx0==13)?val27:0.0f);
  float alu34 = ((idx0==14)?val28:0.0f);
  float alu35 = ((idx0==15)?val29:0.0f);
  float alu36 = ((idx0==16)?val30:0.0f);
  float alu37 = ((idx0==17)?val31:0.0f);
  float alu38 = ((idx0==18)?((*(acc1+0))+((float)(val20))):0.0f);
  float alu39 = ((idx0==19)?((*(acc2+0))+((float)(val21))):0.0f);
  float alu40 = (alu15?((*(acc7+0))+((float)(val22))):0.0f);
  float alu41 = ((idx0==32)?((*(acc3+0))+((float)(val23))):0.0f);
  float alu42 = ((idx0==33)?val32:0.0f);
  float alu43 = ((idx0==34)?val33:0.0f);
  float alu44 = ((idx0==35)?val34:0.0f);
  float alu45 = ((idx0==36)?val35:0.0f);
  float alu46 = ((idx0==37)?val36:0.0f);
  float alu47 = ((idx0==38)?((*(acc4+0))+((float)(val24))):0.0f);
  float alu48 = ((idx0==39)?((*(acc5+0))+((float)(val25))):0.0f);
  float alu49 = ((idx0==40)?((*(acc6+0))+((float)(val26))):0.0f);
  *(data0_553+idx0) = (alu31+alu32+alu33+alu34+alu35+alu36+alu37+alu38+alu39+alu40+alu41+alu42+alu43+alu44+alu45+alu46+alu47+alu48+alu49+val37);
}