#pragma OPENCL EXTENSION cl_khr_fp16 : enable
__kernel void E_240_360_4_4(write_only image2d_t data0_1382400, __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 = (idx1<<2);
  int alu1 = ((idx0*1440)+(idx2*5760)+alu0);
  uchar val0 = (*(data1_1382400+alu1));
  uchar val1 = (*(data1_1382400+(alu1+1)));
  uchar val2 = (*(data1_1382400+(alu1+2)));
  uchar val3 = (*(data1_1382400+(alu1+3)));
  write_imagef(data0_1382400, (int2)((idx0+alu0),idx2), (float4)(((float)((((half)(val0))*((half)(0.00392156862745098f))))),((float)((((half)(val1))*((half)(0.00392156862745098f))))),((float)((((half)(val2))*((half)(0.00392156862745098f))))),((float)((((half)(val3))*((half)(0.00392156862745098f)))))));
}

__kernel void r_120_60_8_4_3_4_3_3_4(write_only image2d_t data0_691200, read_only image2d_t data1_1382400, read_only image2d_t data2_4608, __global float* data3_32) {
  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*24);
  *(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 ridx1005 = 0; ridx1005 < 4; ridx1005++) {
    for (int ridx1006 = 0; ridx1006 < 3; ridx1006++) {
      int alu13 = ((idx2<<1)+ridx1006+-1);
      for (int ridx1007 = 0; ridx1007 < 3; ridx1007++) {
        int alu14 = (ridx1007<<2);
        int alu15 = (alu0+ridx1005+alu14);
        float4 val0 = read_imagef(data1_1382400, smp, (int2)((alu15+-4),alu13));
        float4 val1 = read_imagef(data1_1382400, smp, (int2)((alu15+4),alu13));
        float4 val2 = read_imagef(data1_1382400, smp, (int2)((alu15+12),alu13));
        int alu16 = ((ridx1005*12)+(ridx1006*48)+alu14);
        float4 val3 = read_imagef(data2_4608, smp, (int2)(alu16,idx0));
        float4 val4 = read_imagef(data2_4608, smp, (int2)((alu16+1),idx0));
        float4 val5 = read_imagef(data2_4608, smp, (int2)((alu16+2),idx0));
        float4 val6 = read_imagef(data2_4608, smp, (int2)((alu16+3),idx0));
        *(acc0+0) = ((*(acc0+0))+(val0.x*val3.x)+(val0.y*val4.x)+(val0.z*val5.x)+(val0.w*val6.x));
        *(acc0+3) = ((*(acc0+3))+(val0.x*val3.y)+(val0.y*val4.y)+(val0.z*val5.y)+(val0.w*val6.y));
        *(acc0+6) = ((*(acc0+6))+(val0.x*val3.z)+(val0.y*val4.z)+(val0.z*val5.z)+(val0.w*val6.z));
        *(acc0+9) = ((*(acc0+9))+(val0.x*val3.w)+(val0.y*val4.w)+(val0.z*val5.w)+(val0.w*val6.w));
        *(acc0+1) = ((*(acc0+1))+(val1.x*val3.x)+(val1.y*val4.x)+(val1.z*val5.x)+(val1.w*val6.x));
        *(acc0+4) = ((*(acc0+4))+(val1.x*val3.y)+(val1.y*val4.y)+(val1.z*val5.y)+(val1.w*val6.y));
        *(acc0+7) = ((*(acc0+7))+(val1.x*val3.z)+(val1.y*val4.z)+(val1.z*val5.z)+(val1.w*val6.z));
        *(acc0+10) = ((*(acc0+10))+(val1.x*val3.w)+(val1.y*val4.w)+(val1.z*val5.w)+(val1.w*val6.w));
        *(acc0+2) = ((*(acc0+2))+(val2.x*val3.x)+(val2.y*val4.x)+(val2.z*val5.x)+(val2.w*val6.x));
        *(acc0+5) = ((*(acc0+5))+(val2.x*val3.y)+(val2.y*val4.y)+(val2.z*val5.y)+(val2.w*val6.y));
        *(acc0+8) = ((*(acc0+8))+(val2.x*val3.z)+(val2.y*val4.z)+(val2.z*val5.z)+(val2.w*val6.z));
        *(acc0+11) = ((*(acc0+11))+(val2.x*val3.w)+(val2.y*val4.w)+(val2.z*val5.w)+(val2.w*val6.w));
      }
    }
  }
  float4 val7 = (*((__global float4*)((data3_32+(idx0<<2)))));
  int alu32 = (idx0+alu0);
  float alu33 = ((*(acc0+0))+val7.x);
  float alu34 = ((*(acc0+1))+val7.x);
  float alu35 = ((*(acc0+2))+val7.x);
  float alu36 = ((*(acc0+3))+val7.y);
  float alu37 = ((*(acc0+4))+val7.y);
  float alu38 = ((*(acc0+5))+val7.y);
  float alu39 = ((*(acc0+6))+val7.z);
  float alu40 = ((*(acc0+7))+val7.z);
  float alu41 = ((*(acc0+8))+val7.z);
  float alu42 = ((*(acc0+9))+val7.w);
  float alu43 = ((*(acc0+10))+val7.w);
  float alu44 = ((*(acc0+11))+val7.w);
  write_imagef(data0_691200, (int2)(alu32,idx2), (float4)(((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39),((1/(1.0f+exp2(((alu42+(0.044708251953125f*alu42*alu42*alu42))*-2.3021129851685216f))))*alu42)));
  write_imagef(data0_691200, (int2)((alu32+8),idx2), (float4)(((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40),((1/(1.0f+exp2(((alu43+(0.044708251953125f*alu43*alu43*alu43))*-2.3021129851685216f))))*alu43)));
  write_imagef(data0_691200, (int2)((alu32+16),idx2), (float4)(((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41),((1/(1.0f+exp2(((alu44+(0.044708251953125f*alu44*alu44*alu44))*-2.3021129851685216f))))*alu44)));
}

__kernel void r_60_30_8_4_3_8_3_3_4(write_only image2d_t data0_172800, read_only image2d_t data1_691200, read_only image2d_t data2_9216, __global float* data3_32) {
  int idx1 = get_global_id(1); /* 30 */
  int idx2 = get_global_id(2); /* 60 */
  for (int ridx1005 = 0; ridx1005 < 8; ridx1005++) {
      int alu12 = ((idx2<<1)+ridx1006+-1);
        int alu13 = ((idx1*48)+ridx1005+(ridx1007<<3));
        float4 val0 = read_imagef(data1_691200, smp, (int2)((alu13+-8),alu12));
        float4 val1 = read_imagef(data1_691200, smp, (int2)((alu13+8),alu12));
        float4 val2 = read_imagef(data1_691200, smp, (int2)((alu13+24),alu12));
        int alu14 = ((ridx1005*12)+(ridx1006*96)+(ridx1007<<2));
        float4 val3 = read_imagef(data2_9216, smp, (int2)(alu14,idx0));
        float4 val4 = read_imagef(data2_9216, smp, (int2)((alu14+1),idx0));
        float4 val5 = read_imagef(data2_9216, smp, (int2)((alu14+2),idx0));
        float4 val6 = read_imagef(data2_9216, smp, (int2)((alu14+3),idx0));
      }
    }
  }
  float alu30 = ((*(acc0+0))+val7.x);
  float alu31 = ((*(acc0+1))+val7.x);
  float alu32 = ((*(acc0+2))+val7.x);
  float alu33 = ((*(acc0+3))+val7.y);
  float alu34 = ((*(acc0+4))+val7.y);
  float alu35 = ((*(acc0+5))+val7.y);
  float alu36 = ((*(acc0+6))+val7.z);
  float alu37 = ((*(acc0+7))+val7.z);
  float alu38 = ((*(acc0+8))+val7.z);
  float alu39 = ((*(acc0+9))+val7.w);
  float alu40 = ((*(acc0+10))+val7.w);
  float alu41 = ((*(acc0+11))+val7.w);
  int alu42 = (idx0+(idx1*24));
  write_imagef(data0_172800, (int2)(alu42,idx2), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_172800, (int2)((alu42+8),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_172800, (int2)((alu42+16),idx2), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

__kernel void r_60_30_8_4_3_8_4(write_only image2d_t data0_172800, read_only image2d_t data1_172800, read_only image2d_t data2_1024, __global float* data3_32) {
    int alu13 = (alu0+ridx1005);
    float4 val0 = read_imagef(data1_172800, smp, (int2)(alu13,idx2));
    float4 val1 = read_imagef(data1_172800, smp, (int2)((alu13+8),idx2));
    float4 val2 = read_imagef(data1_172800, smp, (int2)((alu13+16),idx2));
    int alu14 = (ridx1005<<2);
    float4 val3 = read_imagef(data2_1024, smp, (int2)(alu14,idx0));
    float4 val4 = read_imagef(data2_1024, smp, (int2)((alu14+1),idx0));
    float4 val5 = read_imagef(data2_1024, smp, (int2)((alu14+2),idx0));
    float4 val6 = read_imagef(data2_1024, smp, (int2)((alu14+3),idx0));
    *(acc0+1) = ((*(acc0+1))+(val1.x*val3.x)+(val1.y*val4.x)+(val1.z*val5.x)+(val1.w*val6.x));
    *(acc0+4) = ((*(acc0+4))+(val1.x*val3.y)+(val1.y*val4.y)+(val1.z*val5.y)+(val1.w*val6.y));
    *(acc0+7) = ((*(acc0+7))+(val1.x*val3.z)+(val1.y*val4.z)+(val1.z*val5.z)+(val1.w*val6.z));
    *(acc0+10) = ((*(acc0+10))+(val1.x*val3.w)+(val1.y*val4.w)+(val1.z*val5.w)+(val1.w*val6.w));
    *(acc0+2) = ((*(acc0+2))+(val2.x*val3.x)+(val2.y*val4.x)+(val2.z*val5.x)+(val2.w*val6.x));
    *(acc0+5) = ((*(acc0+5))+(val2.x*val3.y)+(val2.y*val4.y)+(val2.z*val5.y)+(val2.w*val6.y));
    *(acc0+8) = ((*(acc0+8))+(val2.x*val3.z)+(val2.y*val4.z)+(val2.z*val5.z)+(val2.w*val6.z));
    *(acc0+11) = ((*(acc0+11))+(val2.x*val3.w)+(val2.y*val4.w)+(val2.z*val5.w)+(val2.w*val6.w));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val3.x)+(val0.y*val4.x)+(val0.z*val5.x)+(val0.w*val6.x));
    *(acc0+3) = ((*(acc0+3))+(val0.x*val3.y)+(val0.y*val4.y)+(val0.z*val5.y)+(val0.w*val6.y));
    *(acc0+6) = ((*(acc0+6))+(val0.x*val3.z)+(val0.y*val4.z)+(val0.z*val5.z)+(val0.w*val6.z));
    *(acc0+9) = ((*(acc0+9))+(val0.x*val3.w)+(val0.y*val4.w)+(val0.z*val5.w)+(val0.w*val6.w));
  }
  int alu28 = (idx0+alu0);
  float alu29 = ((*(acc0+0))+val7.x);
  float alu30 = ((*(acc0+1))+val7.x);
  float alu31 = ((*(acc0+2))+val7.x);
  float alu32 = ((*(acc0+3))+val7.y);
  float alu33 = ((*(acc0+4))+val7.y);
  float alu34 = ((*(acc0+5))+val7.y);
  float alu35 = ((*(acc0+6))+val7.z);
  float alu36 = ((*(acc0+7))+val7.z);
  float alu37 = ((*(acc0+8))+val7.z);
  float alu38 = ((*(acc0+9))+val7.w);
  float alu39 = ((*(acc0+10))+val7.w);
  float alu40 = ((*(acc0+11))+val7.w);
  write_imagef(data0_172800, (int2)(alu28,idx2), (float4)(((1/(1.0f+exp2(((alu29+(0.044708251953125f*alu29*alu29*alu29))*-2.3021129851685216f))))*alu29),((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38)));
  write_imagef(data0_172800, (int2)((alu28+8),idx2), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_172800, (int2)((alu28+16),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
}

__kernel void r_30_15_24_4_3_8_3_3_4(write_only image2d_t data0_129600, read_only image2d_t data1_172800, read_only image2d_t data2_27648, __global float* data3_96) {
  int idx0 = get_global_id(0); /* 24 */
  int idx1 = get_global_id(1); /* 15 */
  int idx2 = get_global_id(2); /* 30 */
        float4 val0 = read_imagef(data1_172800, smp, (int2)((alu13+-8),alu12));
        float4 val1 = read_imagef(data1_172800, smp, (int2)((alu13+8),alu12));
        float4 val2 = read_imagef(data1_172800, smp, (int2)((alu13+24),alu12));
        float4 val3 = read_imagef(data2_27648, smp, (int2)(alu14,idx0));
        float4 val4 = read_imagef(data2_27648, smp, (int2)((alu14+1),idx0));
        float4 val5 = read_imagef(data2_27648, smp, (int2)((alu14+2),idx0));
        float4 val6 = read_imagef(data2_27648, smp, (int2)((alu14+3),idx0));
      }
    }
  }
  float4 val7 = (*((__global float4*)((data3_96+(idx0<<2)))));
  int alu42 = (idx0+(idx1*72));
  write_imagef(data0_129600, (int2)(alu42,idx2), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_129600, (int2)((alu42+24),idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_129600, (int2)((alu42+48),idx2), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

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

__kernel void r_30_15_16_4_3_5_5(write_only image2d_t data0_86400, read_only image2d_t data1_86400, read_only image2d_t data2_1600, __global float* data3_64) {
  int alu0 = (idx0+(idx1*48));
  int alu1 = (alu0+32);
  int alu2 = (alu0+16);
  for (int ridx1005 = 0; ridx1005 < 5; ridx1005++) {
    int alu15 = (idx2+ridx1005+-2);
    float4 val0 = read_imagef(data1_86400, smp, (int2)((alu0+-32),alu15));
    float4 val1 = read_imagef(data1_86400, smp, (int2)(alu0,alu15));
    float4 val2 = read_imagef(data1_86400, smp, (int2)((alu0+-16),alu15));
    float4 val3 = read_imagef(data1_86400, smp, (int2)(alu2,alu15));
    float4 val4 = read_imagef(data1_86400, smp, (int2)(alu1,alu15));
    float4 val5 = read_imagef(data1_86400, smp, (int2)((alu0+48),alu15));
    float4 val6 = read_imagef(data1_86400, smp, (int2)((alu0+64),alu15));
    int alu16 = (ridx1005*5);
    float4 val7 = read_imagef(data2_1600, smp, (int2)(alu16,idx0));
    float4 val8 = read_imagef(data2_1600, smp, (int2)((alu16+1),idx0));
    float4 val9 = read_imagef(data2_1600, smp, (int2)((alu16+2),idx0));
    float4 val10 = read_imagef(data2_1600, smp, (int2)((alu16+3),idx0));
    float4 val11 = read_imagef(data2_1600, smp, (int2)((alu16+4),idx0));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val7.x)+(val2.x*val8.x)+(val1.x*val9.x)+(val3.x*val10.x)+(val4.x*val11.x));
    *(acc0+1) = ((*(acc0+1))+(val2.x*val7.x)+(val1.x*val8.x)+(val3.x*val9.x)+(val4.x*val10.x)+(val5.x*val11.x));
    *(acc0+2) = ((*(acc0+2))+(val1.x*val7.x)+(val3.x*val8.x)+(val4.x*val9.x)+(val5.x*val10.x)+(val6.x*val11.x));
    *(acc0+3) = ((*(acc0+3))+(val0.y*val7.y)+(val2.y*val8.y)+(val1.y*val9.y)+(val3.y*val10.y)+(val4.y*val11.y));
    *(acc0+4) = ((*(acc0+4))+(val2.y*val7.y)+(val1.y*val8.y)+(val3.y*val9.y)+(val4.y*val10.y)+(val5.y*val11.y));
    *(acc0+5) = ((*(acc0+5))+(val1.y*val7.y)+(val3.y*val8.y)+(val4.y*val9.y)+(val5.y*val10.y)+(val6.y*val11.y));
    *(acc0+6) = ((*(acc0+6))+(val0.z*val7.z)+(val2.z*val8.z)+(val1.z*val9.z)+(val3.z*val10.z)+(val4.z*val11.z));
    *(acc0+7) = ((*(acc0+7))+(val2.z*val7.z)+(val1.z*val8.z)+(val3.z*val9.z)+(val4.z*val10.z)+(val5.z*val11.z));
    *(acc0+8) = ((*(acc0+8))+(val1.z*val7.z)+(val3.z*val8.z)+(val4.z*val9.z)+(val5.z*val10.z)+(val6.z*val11.z));
    *(acc0+9) = ((*(acc0+9))+(val0.w*val7.w)+(val2.w*val8.w)+(val1.w*val9.w)+(val3.w*val10.w)+(val4.w*val11.w));
    *(acc0+10) = ((*(acc0+10))+(val2.w*val7.w)+(val1.w*val8.w)+(val3.w*val9.w)+(val4.w*val10.w)+(val5.w*val11.w));
    *(acc0+11) = ((*(acc0+11))+(val1.w*val7.w)+(val3.w*val8.w)+(val4.w*val9.w)+(val5.w*val10.w)+(val6.w*val11.w));
  }
  float4 val12 = (*((__global float4*)((data3_64+(idx0<<2)))));
  write_imagef(data0_86400, (int2)(alu0,idx2), (float4)(((*(acc0+0))+val12.x),((*(acc0+3))+val12.y),((*(acc0+6))+val12.z),((*(acc0+9))+val12.w)));
  write_imagef(data0_86400, (int2)(alu2,idx2), (float4)(((*(acc0+1))+val12.x),((*(acc0+4))+val12.y),((*(acc0+7))+val12.z),((*(acc0+10))+val12.w)));
  write_imagef(data0_86400, (int2)(alu1,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_259200, read_only image2d_t data1_86400, read_only image2d_t data2_12288, __global float* data3_192) {
  int idx0 = get_global_id(0); /* 48 */
  for (int ridx1005 = 0; ridx1005 < 16; ridx1005++) {
    int alu12 = ((idx1*48)+ridx1005);
    float4 val0 = read_imagef(data1_86400, smp, (int2)(alu12,idx2));
    float4 val1 = read_imagef(data1_86400, smp, (int2)((alu12+16),idx2));
    float4 val2 = read_imagef(data1_86400, smp, (int2)((alu12+32),idx2));
    float4 val3 = read_imagef(data2_12288, smp, (int2)(alu13,idx0));
    float4 val4 = read_imagef(data2_12288, smp, (int2)((alu13+1),idx0));
    float4 val5 = read_imagef(data2_12288, smp, (int2)((alu13+2),idx0));
    float4 val6 = read_imagef(data2_12288, smp, (int2)((alu13+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_192+(idx0<<2)))));
  int alu39 = (idx0+(idx1*144));
  write_imagef(data0_259200, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044708251953125f*alu27*alu27*alu27))*-2.3021129851685216f))))*alu27),((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36)));
  write_imagef(data0_259200, (int2)((alu39+48),idx2), (float4)(((1/(1.0f+exp2(((alu28+(0.044708251953125f*alu28*alu28*alu28))*-2.3021129851685216f))))*alu28),((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37)));
  write_imagef(data0_259200, (int2)((alu39+96),idx2), (float4)(((1/(1.0f+exp2(((alu29+(0.044708251953125f*alu29*alu29*alu29))*-2.3021129851685216f))))*alu29),((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38)));
}

__kernel void r_5_23_48_4_3_5_5(write_only image2d_t data0_66240, read_only image2d_t data1_259200, read_only image2d_t data2_4800, __global float* data3_192) {
  int idx1 = get_global_id(1); /* 23 */
  int idx2 = get_global_id(2); /* 5 */
  int alu0 = (idx0+(idx1*96));
  int alu13 = (alu0+-96);
  int alu14 = (alu0+-48);
  int alu15 = (alu0+48);
  int alu16 = (alu0+96);
    int alu17 = ((idx2*6)+ridx1005);
    float4 val0 = read_imagef(data1_259200, smp, (int2)(alu13,alu17));
    float4 val1 = read_imagef(data1_259200, smp, (int2)(alu14,alu17));
    float4 val2 = read_imagef(data1_259200, smp, (int2)(alu0,alu17));
    float4 val3 = read_imagef(data1_259200, smp, (int2)(alu15,alu17));
    float4 val4 = read_imagef(data1_259200, smp, (int2)(alu16,alu17));
    int alu18 = (alu17+-2);
    float4 val5 = read_imagef(data1_259200, smp, (int2)(alu13,alu18));
    float4 val6 = read_imagef(data1_259200, smp, (int2)(alu0,alu18));
    float4 val7 = read_imagef(data1_259200, smp, (int2)(alu14,alu18));
    float4 val8 = read_imagef(data1_259200, smp, (int2)(alu15,alu18));
    float4 val9 = read_imagef(data1_259200, smp, (int2)(alu16,alu18));
    int alu19 = (alu17+2);
    float4 val10 = read_imagef(data1_259200, smp, (int2)(alu13,alu19));
    float4 val11 = read_imagef(data1_259200, smp, (int2)(alu14,alu19));
    float4 val12 = read_imagef(data1_259200, smp, (int2)(alu0,alu19));
    float4 val13 = read_imagef(data1_259200, smp, (int2)(alu15,alu19));
    float4 val14 = read_imagef(data1_259200, smp, (int2)(alu16,alu19));
    int alu20 = (ridx1005*5);
    float4 val15 = read_imagef(data2_4800, smp, (int2)(alu20,idx0));
    float4 val16 = read_imagef(data2_4800, smp, (int2)((alu20+1),idx0));
    float4 val17 = read_imagef(data2_4800, smp, (int2)((alu20+2),idx0));
    float4 val18 = read_imagef(data2_4800, smp, (int2)((alu20+3),idx0));
    float4 val19 = read_imagef(data2_4800, smp, (int2)((alu20+4),idx0));
    *(acc0+0) = ((*(acc0+0))+(val5.x*val15.x)+(val7.x*val16.x)+(val6.x*val17.x)+(val8.x*val18.x)+(val9.x*val19.x));
    *(acc0+2) = ((*(acc0+2))+(val10.x*val15.x)+(val11.x*val16.x)+(val12.x*val17.x)+(val13.x*val18.x)+(val14.x*val19.x));
    *(acc0+1) = ((*(acc0+1))+(val0.x*val15.x)+(val1.x*val16.x)+(val2.x*val17.x)+(val3.x*val18.x)+(val4.x*val19.x));
    *(acc0+3) = ((*(acc0+3))+(val5.y*val15.y)+(val7.y*val16.y)+(val6.y*val17.y)+(val8.y*val18.y)+(val9.y*val19.y));
    *(acc0+5) = ((*(acc0+5))+(val10.y*val15.y)+(val11.y*val16.y)+(val12.y*val17.y)+(val13.y*val18.y)+(val14.y*val19.y));
    *(acc0+4) = ((*(acc0+4))+(val0.y*val15.y)+(val1.y*val16.y)+(val2.y*val17.y)+(val3.y*val18.y)+(val4.y*val19.y));
    *(acc0+6) = ((*(acc0+6))+(val5.z*val15.z)+(val7.z*val16.z)+(val6.z*val17.z)+(val8.z*val18.z)+(val9.z*val19.z));
    *(acc0+8) = ((*(acc0+8))+(val10.z*val15.z)+(val11.z*val16.z)+(val12.z*val17.z)+(val13.z*val18.z)+(val14.z*val19.z));
    *(acc0+7) = ((*(acc0+7))+(val0.z*val15.z)+(val1.z*val16.z)+(val2.z*val17.z)+(val3.z*val18.z)+(val4.z*val19.z));
    *(acc0+9) = ((*(acc0+9))+(val5.w*val15.w)+(val7.w*val16.w)+(val6.w*val17.w)+(val8.w*val18.w)+(val9.w*val19.w));
    *(acc0+11) = ((*(acc0+11))+(val10.w*val15.w)+(val11.w*val16.w)+(val12.w*val17.w)+(val13.w*val18.w)+(val14.w*val19.w));
    *(acc0+10) = ((*(acc0+10))+(val0.w*val15.w)+(val1.w*val16.w)+(val2.w*val17.w)+(val3.w*val18.w)+(val4.w*val19.w));
  }
  float4 val20 = (*((__global float4*)((data3_192+(idx0<<2)))));
  float alu34 = ((*(acc0+0))+val20.x);
  float alu35 = ((*(acc0+1))+val20.x);
  float alu36 = ((*(acc0+2))+val20.x);
  float alu37 = ((*(acc0+3))+val20.y);
  float alu38 = ((*(acc0+4))+val20.y);
  float alu39 = ((*(acc0+5))+val20.y);
  float alu40 = ((*(acc0+6))+val20.z);
  float alu41 = ((*(acc0+7))+val20.z);
  float alu42 = ((*(acc0+8))+val20.z);
  float alu43 = ((*(acc0+9))+val20.w);
  float alu44 = ((*(acc0+10))+val20.w);
  float alu45 = ((*(acc0+11))+val20.w);
  int alu46 = (idx0+(idx1*48));
  int alu47 = (idx2*3);
  write_imagef(data0_66240, (int2)(alu46,alu47), (float4)(((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40),((1/(1.0f+exp2(((alu43+(0.044708251953125f*alu43*alu43*alu43))*-2.3021129851685216f))))*alu43)));
  write_imagef(data0_66240, (int2)(alu46,(alu47+1)), (float4)(((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41),((1/(1.0f+exp2(((alu44+(0.044708251953125f*alu44*alu44*alu44))*-2.3021129851685216f))))*alu44)));
  write_imagef(data0_66240, (int2)(alu46,(alu47+2)), (float4)(((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39),((1/(1.0f+exp2(((alu42+(0.044708251953125f*alu42*alu42*alu42))*-2.3021129851685216f))))*alu42),((1/(1.0f+exp2(((alu45+(0.044708251953125f*alu45*alu45*alu45))*-2.3021129851685216f))))*alu45)));
}

__kernel void r_5_23_24_4_3_48_4(write_only image2d_t data0_33120, read_only image2d_t data1_66240, read_only image2d_t data2_18432, __global float* data3_96) {
  int alu0 = (idx2*3);
  int alu1 = (alu0+2);
  int alu2 = (alu0+1);
  for (int ridx1005 = 0; ridx1005 < 48; ridx1005++) {
    int alu15 = ((idx1*48)+ridx1005);
    float4 val0 = read_imagef(data1_66240, smp, (int2)(alu15,alu2));
    float4 val1 = read_imagef(data1_66240, smp, (int2)(alu15,alu1));
    float4 val2 = read_imagef(data1_66240, smp, (int2)(alu15,alu0));
    int alu16 = (ridx1005<<2);
    float4 val3 = read_imagef(data2_18432, smp, (int2)(alu16,idx0));
    float4 val4 = read_imagef(data2_18432, smp, (int2)((alu16+1),idx0));
    float4 val5 = read_imagef(data2_18432, smp, (int2)((alu16+2),idx0));
    float4 val6 = read_imagef(data2_18432, smp, (int2)((alu16+3),idx0));
    *(acc0+1) = ((*(acc0+1))+(val0.x*val3.x)+(val0.y*val4.x)+(val0.z*val5.x)+(val0.w*val6.x));
    *(acc0+4) = ((*(acc0+4))+(val0.x*val3.y)+(val0.y*val4.y)+(val0.z*val5.y)+(val0.w*val6.y));
    *(acc0+7) = ((*(acc0+7))+(val0.x*val3.z)+(val0.y*val4.z)+(val0.z*val5.z)+(val0.w*val6.z));
    *(acc0+10) = ((*(acc0+10))+(val0.x*val3.w)+(val0.y*val4.w)+(val0.z*val5.w)+(val0.w*val6.w));
    *(acc0+2) = ((*(acc0+2))+(val1.x*val3.x)+(val1.y*val4.x)+(val1.z*val5.x)+(val1.w*val6.x));
    *(acc0+5) = ((*(acc0+5))+(val1.x*val3.y)+(val1.y*val4.y)+(val1.z*val5.y)+(val1.w*val6.y));
    *(acc0+8) = ((*(acc0+8))+(val1.x*val3.z)+(val1.y*val4.z)+(val1.z*val5.z)+(val1.w*val6.z));
    *(acc0+11) = ((*(acc0+11))+(val1.x*val3.w)+(val1.y*val4.w)+(val1.z*val5.w)+(val1.w*val6.w));
    *(acc0+0) = ((*(acc0+0))+(val2.x*val3.x)+(val2.y*val4.x)+(val2.z*val5.x)+(val2.w*val6.x));
    *(acc0+3) = ((*(acc0+3))+(val2.x*val3.y)+(val2.y*val4.y)+(val2.z*val5.y)+(val2.w*val6.y));
    *(acc0+6) = ((*(acc0+6))+(val2.x*val3.z)+(val2.y*val4.z)+(val2.z*val5.z)+(val2.w*val6.z));
    *(acc0+9) = ((*(acc0+9))+(val2.x*val3.w)+(val2.y*val4.w)+(val2.z*val5.w)+(val2.w*val6.w));
  }
  int alu30 = (idx0+(idx1*24));
  write_imagef(data0_33120, (int2)(alu30,alu2), (float4)(((*(acc0+1))+val7.x),((*(acc0+4))+val7.y),((*(acc0+7))+val7.z),((*(acc0+10))+val7.w)));
  write_imagef(data0_33120, (int2)(alu30,alu1), (float4)(((*(acc0+2))+val7.x),((*(acc0+5))+val7.y),((*(acc0+8))+val7.z),((*(acc0+11))+val7.w)));
  write_imagef(data0_33120, (int2)(alu30,alu0), (float4)(((*(acc0+0))+val7.x),((*(acc0+3))+val7.y),((*(acc0+6))+val7.z),((*(acc0+9))+val7.w)));
}

__kernel void r_5_23_48_4_3_24_4(write_only image2d_t data0_66240, read_only image2d_t data1_33120, read_only image2d_t data2_18432, __global float* data3_192) {
    int alu15 = ((idx1*24)+ridx1005);
    float4 val0 = read_imagef(data1_33120, smp, (int2)(alu15,alu2));
    float4 val1 = read_imagef(data1_33120, smp, (int2)(alu15,alu1));
    float4 val2 = read_imagef(data1_33120, smp, (int2)(alu15,alu0));
  }
  int alu42 = (idx0+(idx1*48));
  write_imagef(data0_66240, (int2)(alu42,alu0), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_66240, (int2)(alu42,alu2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_66240, (int2)(alu42,alu1), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

__kernel void r_5_23_48_4_3_3_3(write_only image2d_t data0_66240, read_only image2d_t data1_66240, read_only image2d_t data2_1728, __global float* data3_192) {
  float4 val0 = read_imagef(data2_1728, smp, (int2)(0,idx0));
  float4 val1 = read_imagef(data2_1728, smp, (int2)(1,idx0));
  float4 val2 = read_imagef(data2_1728, smp, (int2)(3,idx0));
  float4 val3 = read_imagef(data2_1728, smp, (int2)(6,idx0));
  float4 val4 = read_imagef(data2_1728, smp, (int2)(4,idx0));
  float4 val5 = read_imagef(data2_1728, smp, (int2)(7,idx0));
  float4 val6 = read_imagef(data2_1728, smp, (int2)(2,idx0));
  float4 val7 = read_imagef(data2_1728, smp, (int2)(5,idx0));
  float4 val8 = read_imagef(data2_1728, smp, (int2)(8,idx0));
  int alu1 = (alu0+-48);
  int alu2 = (alu0+48);
  int alu3 = (idx2*3);
  int2 cast0 = (int2)(alu0,alu3);
  float4 val9 = read_imagef(data1_66240, smp, (int2)(alu1,alu3));
  float4 val10 = read_imagef(data1_66240, smp, cast0);
  float4 val11 = read_imagef(data1_66240, smp, (int2)(alu2,alu3));
  int alu4 = (alu3+-1);
  float4 val12 = read_imagef(data1_66240, smp, (int2)(alu1,alu4));
  float4 val13 = read_imagef(data1_66240, smp, (int2)(alu0,alu4));
  float4 val14 = read_imagef(data1_66240, smp, (int2)(alu2,alu4));
  int alu5 = (alu3+1);
  int2 cast1 = (int2)(alu0,alu5);
  float4 val15 = read_imagef(data1_66240, smp, (int2)(alu1,alu5));
  float4 val16 = read_imagef(data1_66240, smp, cast1);
  float4 val17 = read_imagef(data1_66240, smp, (int2)(alu2,alu5));
  int alu6 = (alu3+2);
  int2 cast2 = (int2)(alu0,alu6);
  float4 val18 = read_imagef(data1_66240, smp, (int2)(alu1,alu6));
  float4 val19 = read_imagef(data1_66240, smp, cast2);
  float4 val20 = read_imagef(data1_66240, smp, (int2)(alu2,alu6));
  int alu7 = (alu3+3);
  float4 val21 = read_imagef(data1_66240, smp, (int2)(alu0,alu7));
  float4 val22 = read_imagef(data1_66240, smp, (int2)(alu1,alu7));
  float4 val23 = read_imagef(data1_66240, smp, (int2)(alu2,alu7));
  float4 val24 = (*((__global float4*)((data3_192+(idx0<<2)))));
  float alu8 = ((val15.x*val0.x)+(val18.x*val2.x)+(val22.x*val3.x)+(val16.x*val1.x)+(val19.x*val4.x)+(val21.x*val5.x)+(val17.x*val6.x)+(val20.x*val7.x)+(val23.x*val8.x)+val24.x);
  float alu9 = ((val9.x*val0.x)+(val15.x*val2.x)+(val18.x*val3.x)+(val10.x*val1.x)+(val16.x*val4.x)+(val19.x*val5.x)+(val11.x*val6.x)+(val17.x*val7.x)+(val20.x*val8.x)+val24.x);
  float alu10 = ((val12.x*val0.x)+(val9.x*val2.x)+(val15.x*val3.x)+(val13.x*val1.x)+(val10.x*val4.x)+(val16.x*val5.x)+(val14.x*val6.x)+(val11.x*val7.x)+(val17.x*val8.x)+val24.x);
  float alu11 = ((val15.y*val0.y)+(val18.y*val2.y)+(val22.y*val3.y)+(val16.y*val1.y)+(val19.y*val4.y)+(val21.y*val5.y)+(val17.y*val6.y)+(val20.y*val7.y)+(val23.y*val8.y)+val24.y);
  float alu12 = ((val9.y*val0.y)+(val15.y*val2.y)+(val18.y*val3.y)+(val10.y*val1.y)+(val16.y*val4.y)+(val19.y*val5.y)+(val11.y*val6.y)+(val17.y*val7.y)+(val20.y*val8.y)+val24.y);
  float alu13 = ((val12.y*val0.y)+(val9.y*val2.y)+(val15.y*val3.y)+(val13.y*val1.y)+(val10.y*val4.y)+(val16.y*val5.y)+(val14.y*val6.y)+(val11.y*val7.y)+(val17.y*val8.y)+val24.y);
  float alu14 = ((val15.z*val0.z)+(val18.z*val2.z)+(val22.z*val3.z)+(val16.z*val1.z)+(val19.z*val4.z)+(val21.z*val5.z)+(val17.z*val6.z)+(val20.z*val7.z)+(val23.z*val8.z)+val24.z);
  float alu15 = ((val9.z*val0.z)+(val15.z*val2.z)+(val18.z*val3.z)+(val10.z*val1.z)+(val16.z*val4.z)+(val19.z*val5.z)+(val11.z*val6.z)+(val17.z*val7.z)+(val20.z*val8.z)+val24.z);
  float alu16 = ((val12.z*val0.z)+(val9.z*val2.z)+(val15.z*val3.z)+(val13.z*val1.z)+(val10.z*val4.z)+(val16.z*val5.z)+(val14.z*val6.z)+(val11.z*val7.z)+(val17.z*val8.z)+val24.z);
  float alu17 = ((val15.w*val0.w)+(val18.w*val2.w)+(val22.w*val3.w)+(val16.w*val1.w)+(val19.w*val4.w)+(val21.w*val5.w)+(val17.w*val6.w)+(val20.w*val7.w)+(val23.w*val8.w)+val24.w);
  float alu18 = ((val9.w*val0.w)+(val15.w*val2.w)+(val18.w*val3.w)+(val10.w*val1.w)+(val16.w*val4.w)+(val19.w*val5.w)+(val11.w*val6.w)+(val17.w*val7.w)+(val20.w*val8.w)+val24.w);
  float alu19 = ((val12.w*val0.w)+(val9.w*val2.w)+(val15.w*val3.w)+(val13.w*val1.w)+(val10.w*val4.w)+(val16.w*val5.w)+(val14.w*val6.w)+(val11.w*val7.w)+(val17.w*val8.w)+val24.w);
  write_imagef(data0_66240, cast0, (float4)(((1/(1.0f+exp2(((alu10+(0.044708251953125f*alu10*alu10*alu10))*-2.3021129851685216f))))*alu10),((1/(1.0f+exp2(((alu13+(0.044708251953125f*alu13*alu13*alu13))*-2.3021129851685216f))))*alu13),((1/(1.0f+exp2(((alu16+(0.044708251953125f*alu16*alu16*alu16))*-2.3021129851685216f))))*alu16),((1/(1.0f+exp2(((alu19+(0.044708251953125f*alu19*alu19*alu19))*-2.3021129851685216f))))*alu19)));
  write_imagef(data0_66240, cast2, (float4)(((1/(1.0f+exp2(((alu8+(0.044708251953125f*alu8*alu8*alu8))*-2.3021129851685216f))))*alu8),((1/(1.0f+exp2(((alu11+(0.044708251953125f*alu11*alu11*alu11))*-2.3021129851685216f))))*alu11),((1/(1.0f+exp2(((alu14+(0.044708251953125f*alu14*alu14*alu14))*-2.3021129851685216f))))*alu14),((1/(1.0f+exp2(((alu17+(0.044708251953125f*alu17*alu17*alu17))*-2.3021129851685216f))))*alu17)));
  write_imagef(data0_66240, cast1, (float4)(((1/(1.0f+exp2(((alu9+(0.044708251953125f*alu9*alu9*alu9))*-2.3021129851685216f))))*alu9),((1/(1.0f+exp2(((alu12+(0.044708251953125f*alu12*alu12*alu12))*-2.3021129851685216f))))*alu12),((1/(1.0f+exp2(((alu15+(0.044708251953125f*alu15*alu15*alu15))*-2.3021129851685216f))))*alu15),((1/(1.0f+exp2(((alu18+(0.044708251953125f*alu18*alu18*alu18))*-2.3021129851685216f))))*alu18)));
}

__kernel void r_5_23_24_4_3_48_4n1(write_only image2d_t data0_33120, read_only image2d_t data1_66240, read_only image2d_t data2_18432, __global float* data3_96, read_only image2d_t data4_33120) {
  }
  int2 cast0 = (int2)(alu30,alu2);
  int2 cast1 = (int2)(alu30,alu1);
  int2 cast2 = (int2)(alu30,alu0);
  float4 val7 = read_imagef(data4_33120, smp, cast0);
  float4 val8 = read_imagef(data4_33120, smp, cast1);
  float4 val9 = read_imagef(data4_33120, smp, cast2);
  float4 val10 = (*((__global float4*)((data3_96+(idx0<<2)))));
  write_imagef(data0_33120, cast2, (float4)(((*(acc0+0))+val10.x+val9.x),((*(acc0+3))+val10.y+val9.y),((*(acc0+6))+val10.z+val9.z),((*(acc0+9))+val10.w+val9.w)));
  write_imagef(data0_33120, cast0, (float4)(((*(acc0+1))+val10.x+val7.x),((*(acc0+4))+val10.y+val7.y),((*(acc0+7))+val10.z+val7.z),((*(acc0+10))+val10.w+val7.w)));
  write_imagef(data0_33120, cast1, (float4)(((*(acc0+2))+val10.x+val8.x),((*(acc0+5))+val10.y+val8.y),((*(acc0+8))+val10.z+val8.z),((*(acc0+11))+val10.w+val8.w)));
}

__kernel void r_5_23_24_4_3_3_3(write_only image2d_t data0_33120, read_only image2d_t data1_33120, read_only image2d_t data2_864, __global float* data3_96) {
  float4 val0 = read_imagef(data2_864, smp, (int2)(0,idx0));
  float4 val1 = read_imagef(data2_864, smp, (int2)(1,idx0));
  float4 val2 = read_imagef(data2_864, smp, (int2)(3,idx0));
  float4 val3 = read_imagef(data2_864, smp, (int2)(6,idx0));
  float4 val4 = read_imagef(data2_864, smp, (int2)(4,idx0));
  float4 val5 = read_imagef(data2_864, smp, (int2)(7,idx0));
  float4 val6 = read_imagef(data2_864, smp, (int2)(2,idx0));
  float4 val7 = read_imagef(data2_864, smp, (int2)(5,idx0));
  float4 val8 = read_imagef(data2_864, smp, (int2)(8,idx0));
  int alu0 = (idx0+(idx1*24));
  int alu1 = (alu0+-24);
  int alu2 = (alu0+24);
  float4 val9 = read_imagef(data1_33120, smp, (int2)(alu1,alu3));
  float4 val10 = read_imagef(data1_33120, smp, cast0);
  float4 val11 = read_imagef(data1_33120, smp, (int2)(alu2,alu3));
  float4 val12 = read_imagef(data1_33120, smp, (int2)(alu0,alu4));
  float4 val13 = read_imagef(data1_33120, smp, (int2)(alu1,alu4));
  float4 val14 = read_imagef(data1_33120, smp, (int2)(alu2,alu4));
  float4 val15 = read_imagef(data1_33120, smp, (int2)(alu1,alu5));
  float4 val16 = read_imagef(data1_33120, smp, cast1);
  float4 val17 = read_imagef(data1_33120, smp, (int2)(alu2,alu5));
  float4 val18 = read_imagef(data1_33120, smp, (int2)(alu1,alu6));
  float4 val19 = read_imagef(data1_33120, smp, cast2);
  float4 val20 = read_imagef(data1_33120, smp, (int2)(alu2,alu6));
  float4 val21 = read_imagef(data1_33120, smp, (int2)(alu1,alu7));
  float4 val22 = read_imagef(data1_33120, smp, (int2)(alu0,alu7));
  float4 val23 = read_imagef(data1_33120, smp, (int2)(alu2,alu7));
  float4 val24 = (*((__global float4*)((data3_96+(idx0<<2)))));
  write_imagef(data0_33120, cast2, (float4)(((val15.x*val0.x)+(val18.x*val2.x)+(val21.x*val3.x)+(val16.x*val1.x)+(val19.x*val4.x)+(val22.x*val5.x)+(val17.x*val6.x)+(val20.x*val7.x)+(val23.x*val8.x)+val24.x),((val15.y*val0.y)+(val18.y*val2.y)+(val21.y*val3.y)+(val16.y*val1.y)+(val19.y*val4.y)+(val22.y*val5.y)+(val17.y*val6.y)+(val20.y*val7.y)+(val23.y*val8.y)+val24.y),((val15.z*val0.z)+(val18.z*val2.z)+(val21.z*val3.z)+(val16.z*val1.z)+(val19.z*val4.z)+(val22.z*val5.z)+(val17.z*val6.z)+(val20.z*val7.z)+(val23.z*val8.z)+val24.z),((val15.w*val0.w)+(val18.w*val2.w)+(val21.w*val3.w)+(val16.w*val1.w)+(val19.w*val4.w)+(val22.w*val5.w)+(val17.w*val6.w)+(val20.w*val7.w)+(val23.w*val8.w)+val24.w)));
  write_imagef(data0_33120, cast1, (float4)(((val9.x*val0.x)+(val15.x*val2.x)+(val18.x*val3.x)+(val10.x*val1.x)+(val16.x*val4.x)+(val19.x*val5.x)+(val11.x*val6.x)+(val17.x*val7.x)+(val20.x*val8.x)+val24.x),((val9.y*val0.y)+(val15.y*val2.y)+(val18.y*val3.y)+(val10.y*val1.y)+(val16.y*val4.y)+(val19.y*val5.y)+(val11.y*val6.y)+(val17.y*val7.y)+(val20.y*val8.y)+val24.y),((val9.z*val0.z)+(val15.z*val2.z)+(val18.z*val3.z)+(val10.z*val1.z)+(val16.z*val4.z)+(val19.z*val5.z)+(val11.z*val6.z)+(val17.z*val7.z)+(val20.z*val8.z)+val24.z),((val9.w*val0.w)+(val15.w*val2.w)+(val18.w*val3.w)+(val10.w*val1.w)+(val16.w*val4.w)+(val19.w*val5.w)+(val11.w*val6.w)+(val17.w*val7.w)+(val20.w*val8.w)+val24.w)));
  write_imagef(data0_33120, cast0, (float4)(((val13.x*val0.x)+(val9.x*val2.x)+(val15.x*val3.x)+(val12.x*val1.x)+(val10.x*val4.x)+(val16.x*val5.x)+(val14.x*val6.x)+(val11.x*val7.x)+(val17.x*val8.x)+val24.x),((val13.y*val0.y)+(val9.y*val2.y)+(val15.y*val3.y)+(val12.y*val1.y)+(val10.y*val4.y)+(val16.y*val5.y)+(val14.y*val6.y)+(val11.y*val7.y)+(val17.y*val8.y)+val24.y),((val13.z*val0.z)+(val9.z*val2.z)+(val15.z*val3.z)+(val12.z*val1.z)+(val10.z*val4.z)+(val16.z*val5.z)+(val14.z*val6.z)+(val11.z*val7.z)+(val17.z*val8.z)+val24.z),((val13.w*val0.w)+(val9.w*val2.w)+(val15.w*val3.w)+(val12.w*val1.w)+(val10.w*val4.w)+(val16.w*val5.w)+(val14.w*val6.w)+(val11.w*val7.w)+(val17.w*val8.w)+val24.w)));
}

__kernel void r_5_23_96_4_3_24_4(write_only image2d_t data0_132480, read_only image2d_t data1_33120, read_only image2d_t data2_36864, __global float* data3_384) {
  int idx0 = get_global_id(0); /* 96 */
    float4 val3 = read_imagef(data2_36864, smp, (int2)(alu16,idx0));
    float4 val4 = read_imagef(data2_36864, smp, (int2)((alu16+1),idx0));
    float4 val5 = read_imagef(data2_36864, smp, (int2)((alu16+2),idx0));
    float4 val6 = read_imagef(data2_36864, smp, (int2)((alu16+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_384+(idx0<<2)))));
  int alu42 = (idx0+(idx1*96));
  write_imagef(data0_132480, (int2)(alu42,alu0), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_132480, (int2)(alu42,alu2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_132480, (int2)(alu42,alu1), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

__kernel void r_5_23_24_4_3_96_4(write_only image2d_t data0_33120, read_only image2d_t data1_132480, read_only image2d_t data2_36864, __global float* data3_96, read_only image2d_t data4_33120) {
  for (int ridx1005 = 0; ridx1005 < 96; ridx1005++) {
    int alu15 = ((idx1*96)+ridx1005);
    float4 val0 = read_imagef(data1_132480, smp, (int2)(alu15,alu2));
    float4 val1 = read_imagef(data1_132480, smp, (int2)(alu15,alu1));
    float4 val2 = read_imagef(data1_132480, smp, (int2)(alu15,alu0));
  }
}

__kernel void r_5_23_144_4_3_24_4(write_only image2d_t data0_198720, read_only image2d_t data1_33120, read_only image2d_t data2_55296, __global float* data3_576) {
  int idx0 = get_global_id(0); /* 144 */
    float4 val3 = read_imagef(data2_55296, smp, (int2)(alu16,idx0));
    float4 val4 = read_imagef(data2_55296, smp, (int2)((alu16+1),idx0));
    float4 val5 = read_imagef(data2_55296, smp, (int2)((alu16+2),idx0));
    float4 val6 = read_imagef(data2_55296, smp, (int2)((alu16+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_576+(idx0<<2)))));
  int alu42 = (idx0+(idx1*144));
  write_imagef(data0_198720, (int2)(alu42,alu0), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_198720, (int2)(alu42,alu2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_198720, (int2)(alu42,alu1), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

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

__kernel void r_8_4_32_4_3_144_4(write_only image2d_t data0_12288, read_only image2d_t data1_55296, read_only image2d_t data2_73728, __global float* data3_128) {
  int idx0 = get_global_id(0); /* 32 */
  for (int ridx1005 = 0; ridx1005 < 144; ridx1005++) {
    int alu12 = ((idx1*432)+ridx1005);
    float4 val0 = read_imagef(data1_55296, smp, (int2)(alu12,idx2));
    float4 val1 = read_imagef(data1_55296, smp, (int2)((alu12+144),idx2));
    float4 val2 = read_imagef(data1_55296, smp, (int2)((alu12+288),idx2));
    float4 val3 = read_imagef(data2_73728, smp, (int2)(alu13,idx0));
    float4 val4 = read_imagef(data2_73728, smp, (int2)((alu13+1),idx0));
    float4 val5 = read_imagef(data2_73728, smp, (int2)((alu13+2),idx0));
    float4 val6 = read_imagef(data2_73728, smp, (int2)((alu13+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_128+(idx0<<2)))));
  int alu27 = (idx0+(idx1*96));
  write_imagef(data0_12288, (int2)(alu27,idx2), (float4)(((*(acc0+0))+val7.x),((*(acc0+3))+val7.y),((*(acc0+6))+val7.z),((*(acc0+9))+val7.w)));
  write_imagef(data0_12288, (int2)((alu27+32),idx2), (float4)(((*(acc0+1))+val7.x),((*(acc0+4))+val7.y),((*(acc0+7))+val7.z),((*(acc0+10))+val7.w)));
  write_imagef(data0_12288, (int2)((alu27+64),idx2), (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_12288, read_only image2d_t data1_12288, read_only image2d_t data2_3200, __global float* data3_128) {
  int alu1 = (alu0+64);
  int alu2 = (alu0+32);
    float4 val0 = read_imagef(data1_12288, smp, (int2)((alu0+-64),alu15));
    float4 val1 = read_imagef(data1_12288, smp, (int2)(alu0,alu15));
    float4 val2 = read_imagef(data1_12288, smp, (int2)((alu0+-32),alu15));
    float4 val3 = read_imagef(data1_12288, smp, (int2)(alu2,alu15));
    float4 val4 = read_imagef(data1_12288, smp, (int2)(alu1,alu15));
    float4 val5 = read_imagef(data1_12288, smp, (int2)((alu0+96),alu15));
    float4 val6 = read_imagef(data1_12288, smp, (int2)((alu0+128),alu15));
    float4 val7 = read_imagef(data2_3200, smp, (int2)(alu16,idx0));
    float4 val8 = read_imagef(data2_3200, smp, (int2)((alu16+1),idx0));
    float4 val9 = read_imagef(data2_3200, smp, (int2)((alu16+2),idx0));
    float4 val10 = read_imagef(data2_3200, smp, (int2)((alu16+3),idx0));
    float4 val11 = read_imagef(data2_3200, smp, (int2)((alu16+4),idx0));
  }
  float4 val12 = (*((__global float4*)((data3_128+(idx0<<2)))));
  write_imagef(data0_12288, (int2)(alu0,idx2), (float4)(((*(acc0+0))+val12.x),((*(acc0+3))+val12.y),((*(acc0+6))+val12.z),((*(acc0+9))+val12.w)));
  write_imagef(data0_12288, (int2)(alu2,idx2), (float4)(((*(acc0+1))+val12.x),((*(acc0+4))+val12.y),((*(acc0+7))+val12.z),((*(acc0+10))+val12.w)));
  write_imagef(data0_12288, (int2)(alu1,idx2), (float4)(((*(acc0+2))+val12.x),((*(acc0+5))+val12.y),((*(acc0+8))+val12.z),((*(acc0+11))+val12.w)));
}

__kernel void r_8_4_128_4_3_32_4(write_only image2d_t data0_49152, read_only image2d_t data1_12288, read_only image2d_t data2_65536, __global float* data3_512) {
  int idx0 = get_global_id(0); /* 128 */
  for (int ridx1005 = 0; ridx1005 < 32; ridx1005++) {
    int alu12 = ((idx1*96)+ridx1005);
    float4 val0 = read_imagef(data1_12288, smp, (int2)(alu12,idx2));
    float4 val1 = read_imagef(data1_12288, smp, (int2)((alu12+32),idx2));
    float4 val2 = read_imagef(data1_12288, smp, (int2)((alu12+64),idx2));
    float4 val3 = read_imagef(data2_65536, smp, (int2)(alu13,idx0));
    float4 val4 = read_imagef(data2_65536, smp, (int2)((alu13+1),idx0));
    float4 val5 = read_imagef(data2_65536, smp, (int2)((alu13+2),idx0));
    float4 val6 = read_imagef(data2_65536, smp, (int2)((alu13+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_512+(idx0<<2)))));
  int alu39 = (idx0+(idx1*384));
  write_imagef(data0_49152, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044708251953125f*alu27*alu27*alu27))*-2.3021129851685216f))))*alu27),((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36)));
  write_imagef(data0_49152, (int2)((alu39+128),idx2), (float4)(((1/(1.0f+exp2(((alu28+(0.044708251953125f*alu28*alu28*alu28))*-2.3021129851685216f))))*alu28),((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37)));
  write_imagef(data0_49152, (int2)((alu39+256),idx2), (float4)(((1/(1.0f+exp2(((alu29+(0.044708251953125f*alu29*alu29*alu29))*-2.3021129851685216f))))*alu29),((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38)));
}

__kernel void r_8_4_128_4_3_5_5(write_only image2d_t data0_49152, read_only image2d_t data1_49152, read_only image2d_t data2_12800, __global float* data3_512) {
  int alu0 = (idx0+(idx1*384));
  int alu1 = (alu0+256);
  int alu2 = (alu0+128);
    float4 val0 = read_imagef(data1_49152, smp, (int2)((alu0+-256),alu15));
    float4 val1 = read_imagef(data1_49152, smp, (int2)(alu0,alu15));
    float4 val2 = read_imagef(data1_49152, smp, (int2)((alu0+-128),alu15));
    float4 val3 = read_imagef(data1_49152, smp, (int2)(alu2,alu15));
    float4 val4 = read_imagef(data1_49152, smp, (int2)(alu1,alu15));
    float4 val5 = read_imagef(data1_49152, smp, (int2)((alu0+384),alu15));
    float4 val6 = read_imagef(data1_49152, smp, (int2)((alu0+512),alu15));
    float4 val7 = read_imagef(data2_12800, smp, (int2)(alu16,idx0));
    float4 val8 = read_imagef(data2_12800, smp, (int2)((alu16+1),idx0));
    float4 val9 = read_imagef(data2_12800, smp, (int2)((alu16+2),idx0));
    float4 val10 = read_imagef(data2_12800, smp, (int2)((alu16+3),idx0));
    float4 val11 = read_imagef(data2_12800, smp, (int2)((alu16+4),idx0));
  }
  float4 val12 = (*((__global float4*)((data3_512+(idx0<<2)))));
  float alu30 = ((*(acc0+0))+val12.x);
  float alu31 = ((*(acc0+1))+val12.x);
  float alu32 = ((*(acc0+2))+val12.x);
  float alu33 = ((*(acc0+3))+val12.y);
  float alu34 = ((*(acc0+4))+val12.y);
  float alu35 = ((*(acc0+5))+val12.y);
  float alu36 = ((*(acc0+6))+val12.z);
  float alu37 = ((*(acc0+7))+val12.z);
  float alu38 = ((*(acc0+8))+val12.z);
  float alu39 = ((*(acc0+9))+val12.w);
  float alu40 = ((*(acc0+10))+val12.w);
  float alu41 = ((*(acc0+11))+val12.w);
  write_imagef(data0_49152, (int2)(alu0,idx2), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_49152, (int2)(alu2,idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_49152, (int2)(alu1,idx2), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

__kernel void r_8_4_32_4_3_128_4(write_only image2d_t data0_12288, read_only image2d_t data1_49152, read_only image2d_t data2_65536, __global float* data3_128, read_only image2d_t data4_12288) {
  for (int ridx1005 = 0; ridx1005 < 128; ridx1005++) {
    int alu12 = ((idx1*384)+ridx1005);
    float4 val0 = read_imagef(data1_49152, smp, (int2)(alu12,idx2));
    float4 val1 = read_imagef(data1_49152, smp, (int2)((alu12+128),idx2));
    float4 val2 = read_imagef(data1_49152, smp, (int2)((alu12+256),idx2));
  }
  int2 cast0 = (int2)(alu27,idx2);
  float4 val7 = read_imagef(data4_12288, smp, cast0);
  int2 cast1 = (int2)((alu27+32),idx2);
  float4 val8 = read_imagef(data4_12288, smp, cast1);
  int2 cast2 = (int2)((alu27+64),idx2);
  float4 val9 = read_imagef(data4_12288, smp, cast2);
  float4 val10 = (*((__global float4*)((data3_128+(idx0<<2)))));
  write_imagef(data0_12288, cast0, (float4)(((*(acc0+0))+val10.x+val7.x),((*(acc0+3))+val10.y+val7.y),((*(acc0+6))+val10.z+val7.z),((*(acc0+9))+val10.w+val7.w)));
  write_imagef(data0_12288, cast1, (float4)(((*(acc0+1))+val10.x+val8.x),((*(acc0+4))+val10.y+val8.y),((*(acc0+7))+val10.z+val8.z),((*(acc0+10))+val10.w+val8.w)));
  write_imagef(data0_12288, cast2, (float4)(((*(acc0+2))+val10.x+val9.x),((*(acc0+5))+val10.y+val9.y),((*(acc0+8))+val10.z+val9.z),((*(acc0+11))+val10.w+val9.w)));
}

__kernel void r_8_4_96_4_3_32_4(write_only image2d_t data0_36864, read_only image2d_t data1_12288, read_only image2d_t data2_49152, __global float* data3_384) {
    float4 val3 = read_imagef(data2_49152, smp, (int2)(alu13,idx0));
    float4 val4 = read_imagef(data2_49152, smp, (int2)((alu13+1),idx0));
    float4 val5 = read_imagef(data2_49152, smp, (int2)((alu13+2),idx0));
    float4 val6 = read_imagef(data2_49152, smp, (int2)((alu13+3),idx0));
  }
  int alu39 = (idx0+(idx1*288));
  write_imagef(data0_36864, (int2)(alu39,idx2), (float4)(((1/(1.0f+exp2(((alu27+(0.044708251953125f*alu27*alu27*alu27))*-2.3021129851685216f))))*alu27),((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36)));
  write_imagef(data0_36864, (int2)((alu39+96),idx2), (float4)(((1/(1.0f+exp2(((alu28+(0.044708251953125f*alu28*alu28*alu28))*-2.3021129851685216f))))*alu28),((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37)));
  write_imagef(data0_36864, (int2)((alu39+192),idx2), (float4)(((1/(1.0f+exp2(((alu29+(0.044708251953125f*alu29*alu29*alu29))*-2.3021129851685216f))))*alu29),((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38)));
}

__kernel void r_8_4_96_4_3_5_5(write_only image2d_t data0_36864, read_only image2d_t data1_36864, read_only image2d_t data2_9600, __global float* data3_384) {
  int alu0 = (idx0+(idx1*288));
  int alu1 = (alu0+192);
  int alu2 = (alu0+96);
    float4 val0 = read_imagef(data1_36864, smp, (int2)((alu0+-192),alu15));
    float4 val1 = read_imagef(data1_36864, smp, (int2)(alu0,alu15));
    float4 val2 = read_imagef(data1_36864, smp, (int2)((alu0+-96),alu15));
    float4 val3 = read_imagef(data1_36864, smp, (int2)(alu2,alu15));
    float4 val4 = read_imagef(data1_36864, smp, (int2)(alu1,alu15));
    float4 val5 = read_imagef(data1_36864, smp, (int2)((alu0+288),alu15));
    float4 val6 = read_imagef(data1_36864, smp, (int2)((alu0+384),alu15));
    float4 val7 = read_imagef(data2_9600, smp, (int2)(alu16,idx0));
    float4 val8 = read_imagef(data2_9600, smp, (int2)((alu16+1),idx0));
    float4 val9 = read_imagef(data2_9600, smp, (int2)((alu16+2),idx0));
    float4 val10 = read_imagef(data2_9600, smp, (int2)((alu16+3),idx0));
    float4 val11 = read_imagef(data2_9600, smp, (int2)((alu16+4),idx0));
  }
  float4 val12 = (*((__global float4*)((data3_384+(idx0<<2)))));
  write_imagef(data0_36864, (int2)(alu0,idx2), (float4)(((1/(1.0f+exp2(((alu30+(0.044708251953125f*alu30*alu30*alu30))*-2.3021129851685216f))))*alu30),((1/(1.0f+exp2(((alu33+(0.044708251953125f*alu33*alu33*alu33))*-2.3021129851685216f))))*alu33),((1/(1.0f+exp2(((alu36+(0.044708251953125f*alu36*alu36*alu36))*-2.3021129851685216f))))*alu36),((1/(1.0f+exp2(((alu39+(0.044708251953125f*alu39*alu39*alu39))*-2.3021129851685216f))))*alu39)));
  write_imagef(data0_36864, (int2)(alu2,idx2), (float4)(((1/(1.0f+exp2(((alu31+(0.044708251953125f*alu31*alu31*alu31))*-2.3021129851685216f))))*alu31),((1/(1.0f+exp2(((alu34+(0.044708251953125f*alu34*alu34*alu34))*-2.3021129851685216f))))*alu34),((1/(1.0f+exp2(((alu37+(0.044708251953125f*alu37*alu37*alu37))*-2.3021129851685216f))))*alu37),((1/(1.0f+exp2(((alu40+(0.044708251953125f*alu40*alu40*alu40))*-2.3021129851685216f))))*alu40)));
  write_imagef(data0_36864, (int2)(alu1,idx2), (float4)(((1/(1.0f+exp2(((alu32+(0.044708251953125f*alu32*alu32*alu32))*-2.3021129851685216f))))*alu32),((1/(1.0f+exp2(((alu35+(0.044708251953125f*alu35*alu35*alu35))*-2.3021129851685216f))))*alu35),((1/(1.0f+exp2(((alu38+(0.044708251953125f*alu38*alu38*alu38))*-2.3021129851685216f))))*alu38),((1/(1.0f+exp2(((alu41+(0.044708251953125f*alu41*alu41*alu41))*-2.3021129851685216f))))*alu41)));
}

__kernel void r_8_4_32_4_3_96_4(write_only image2d_t data0_12288, read_only image2d_t data1_36864, read_only image2d_t data2_49152, __global float* data3_128, read_only image2d_t data4_12288) {
    int alu12 = ((idx1*288)+ridx1005);
    float4 val0 = read_imagef(data1_36864, smp, (int2)(alu12,idx2));
    float4 val1 = read_imagef(data1_36864, smp, (int2)((alu12+96),idx2));
    float4 val2 = read_imagef(data1_36864, smp, (int2)((alu12+192),idx2));
  }
}

__kernel void r_8_4_128_4_3_3_3(write_only image2d_t data0_49152, read_only image2d_t data1_49152, read_only image2d_t data2_4608, __global float* data3_512) {
  float4 val0 = read_imagef(data2_4608, smp, (int2)(0,idx0));
  float4 val1 = read_imagef(data2_4608, smp, (int2)(2,idx0));
  float4 val2 = read_imagef(data2_4608, smp, (int2)(3,idx0));
  float4 val3 = read_imagef(data2_4608, smp, (int2)(1,idx0));
  float4 val4 = read_imagef(data2_4608, smp, (int2)(4,idx0));
  float4 val5 = read_imagef(data2_4608, smp, (int2)(5,idx0));
  float4 val6 = read_imagef(data2_4608, smp, (int2)(6,idx0));
  float4 val7 = read_imagef(data2_4608, smp, (int2)(7,idx0));
  float4 val8 = read_imagef(data2_4608, smp, (int2)(8,idx0));
  int alu0 = (idx2+-1);
  int alu1 = (idx2+1);
  int alu2 = (idx0+(idx1*384));
  int2 cast0 = (int2)(alu2,idx2);
  float4 val9 = read_imagef(data1_49152, smp, cast0);
  float4 val10 = read_imagef(data1_49152, smp, (int2)(alu2,alu0));
  float4 val11 = read_imagef(data1_49152, smp, (int2)(alu2,alu1));
  int alu3 = (alu2+-128);
  float4 val12 = read_imagef(data1_49152, smp, (int2)(alu3,idx2));
  float4 val13 = read_imagef(data1_49152, smp, (int2)(alu3,alu0));
  float4 val14 = read_imagef(data1_49152, smp, (int2)(alu3,alu1));
  int alu4 = (alu2+128);
  int2 cast1 = (int2)(alu4,idx2);
  float4 val15 = read_imagef(data1_49152, smp, cast1);
  float4 val16 = read_imagef(data1_49152, smp, (int2)(alu4,alu0));
  float4 val17 = read_imagef(data1_49152, smp, (int2)(alu4,alu1));
  int alu5 = (alu2+256);
  int2 cast2 = (int2)(alu5,idx2);
  float4 val18 = read_imagef(data1_49152, smp, (int2)(alu5,alu0));
  float4 val19 = read_imagef(data1_49152, smp, cast2);
  float4 val20 = read_imagef(data1_49152, smp, (int2)(alu5,alu1));
  int alu6 = (alu2+384);
  float4 val21 = read_imagef(data1_49152, smp, (int2)(alu6,idx2));
  float4 val22 = read_imagef(data1_49152, smp, (int2)(alu6,alu0));
  float4 val23 = read_imagef(data1_49152, smp, (int2)(alu6,alu1));
  float4 val24 = (*((__global float4*)((data3_512+(idx0<<2)))));
  float alu7 = ((val13.x*val0.x)+(val12.x*val2.x)+(val14.x*val6.x)+(val10.x*val3.x)+(val9.x*val4.x)+(val11.x*val7.x)+(val16.x*val1.x)+(val15.x*val5.x)+(val17.x*val8.x)+val24.x);
  float alu8 = ((val10.x*val0.x)+(val9.x*val2.x)+(val11.x*val6.x)+(val16.x*val3.x)+(val15.x*val4.x)+(val17.x*val7.x)+(val18.x*val1.x)+(val19.x*val5.x)+(val20.x*val8.x)+val24.x);
  float alu9 = ((val16.x*val0.x)+(val15.x*val2.x)+(val17.x*val6.x)+(val18.x*val3.x)+(val19.x*val4.x)+(val20.x*val7.x)+(val22.x*val1.x)+(val21.x*val5.x)+(val23.x*val8.x)+val24.x);
  float alu10 = ((val13.y*val0.y)+(val12.y*val2.y)+(val14.y*val6.y)+(val10.y*val3.y)+(val9.y*val4.y)+(val11.y*val7.y)+(val16.y*val1.y)+(val15.y*val5.y)+(val17.y*val8.y)+val24.y);
  float alu11 = ((val10.y*val0.y)+(val9.y*val2.y)+(val11.y*val6.y)+(val16.y*val3.y)+(val15.y*val4.y)+(val17.y*val7.y)+(val18.y*val1.y)+(val19.y*val5.y)+(val20.y*val8.y)+val24.y);
  float alu12 = ((val16.y*val0.y)+(val15.y*val2.y)+(val17.y*val6.y)+(val18.y*val3.y)+(val19.y*val4.y)+(val20.y*val7.y)+(val22.y*val1.y)+(val21.y*val5.y)+(val23.y*val8.y)+val24.y);
  float alu13 = ((val13.z*val0.z)+(val12.z*val2.z)+(val14.z*val6.z)+(val10.z*val3.z)+(val9.z*val4.z)+(val11.z*val7.z)+(val16.z*val1.z)+(val15.z*val5.z)+(val17.z*val8.z)+val24.z);
  float alu14 = ((val10.z*val0.z)+(val9.z*val2.z)+(val11.z*val6.z)+(val16.z*val3.z)+(val15.z*val4.z)+(val17.z*val7.z)+(val18.z*val1.z)+(val19.z*val5.z)+(val20.z*val8.z)+val24.z);
  float alu15 = ((val16.z*val0.z)+(val15.z*val2.z)+(val17.z*val6.z)+(val18.z*val3.z)+(val19.z*val4.z)+(val20.z*val7.z)+(val22.z*val1.z)+(val21.z*val5.z)+(val23.z*val8.z)+val24.z);
  float alu16 = ((val13.w*val0.w)+(val12.w*val2.w)+(val14.w*val6.w)+(val10.w*val3.w)+(val9.w*val4.w)+(val11.w*val7.w)+(val16.w*val1.w)+(val15.w*val5.w)+(val17.w*val8.w)+val24.w);
  float alu17 = ((val10.w*val0.w)+(val9.w*val2.w)+(val11.w*val6.w)+(val16.w*val3.w)+(val15.w*val4.w)+(val17.w*val7.w)+(val18.w*val1.w)+(val19.w*val5.w)+(val20.w*val8.w)+val24.w);
  float alu18 = ((val16.w*val0.w)+(val15.w*val2.w)+(val17.w*val6.w)+(val18.w*val3.w)+(val19.w*val4.w)+(val20.w*val7.w)+(val22.w*val1.w)+(val21.w*val5.w)+(val23.w*val8.w)+val24.w);
  write_imagef(data0_49152, cast1, (float4)(((1/(1.0f+exp2(((alu8+(0.044708251953125f*alu8*alu8*alu8))*-2.3021129851685216f))))*alu8),((1/(1.0f+exp2(((alu11+(0.044708251953125f*alu11*alu11*alu11))*-2.3021129851685216f))))*alu11),((1/(1.0f+exp2(((alu14+(0.044708251953125f*alu14*alu14*alu14))*-2.3021129851685216f))))*alu14),((1/(1.0f+exp2(((alu17+(0.044708251953125f*alu17*alu17*alu17))*-2.3021129851685216f))))*alu17)));
  write_imagef(data0_49152, cast0, (float4)(((1/(1.0f+exp2(((alu7+(0.044708251953125f*alu7*alu7*alu7))*-2.3021129851685216f))))*alu7),((1/(1.0f+exp2(((alu10+(0.044708251953125f*alu10*alu10*alu10))*-2.3021129851685216f))))*alu10),((1/(1.0f+exp2(((alu13+(0.044708251953125f*alu13*alu13*alu13))*-2.3021129851685216f))))*alu13),((1/(1.0f+exp2(((alu16+(0.044708251953125f*alu16*alu16*alu16))*-2.3021129851685216f))))*alu16)));
  write_imagef(data0_49152, cast2, (float4)(((1/(1.0f+exp2(((alu9+(0.044708251953125f*alu9*alu9*alu9))*-2.3021129851685216f))))*alu9),((1/(1.0f+exp2(((alu12+(0.044708251953125f*alu12*alu12*alu12))*-2.3021129851685216f))))*alu12),((1/(1.0f+exp2(((alu15+(0.044708251953125f*alu15*alu15*alu15))*-2.3021129851685216f))))*alu15),((1/(1.0f+exp2(((alu18+(0.044708251953125f*alu18*alu18*alu18))*-2.3021129851685216f))))*alu18)));
}

__kernel void r_8_4_240_4_3_32_4(write_only image2d_t data0_92160, read_only image2d_t data1_12288, read_only image2d_t data2_122880) {
  int idx0 = get_global_id(0); /* 240 */
    float4 val3 = read_imagef(data2_122880, smp, (int2)(alu13,idx0));
    float4 val4 = read_imagef(data2_122880, smp, (int2)((alu13+1),idx0));
    float4 val5 = read_imagef(data2_122880, smp, (int2)((alu13+2),idx0));
    float4 val6 = read_imagef(data2_122880, smp, (int2)((alu13+3),idx0));
  }
  int alu27 = (idx0+(idx1*720));
  write_imagef(data0_92160, (int2)(alu27,idx2), (float4)((*(acc0+0)),(*(acc0+3)),(*(acc0+6)),(*(acc0+9))));
  write_imagef(data0_92160, (int2)((alu27+240),idx2), (float4)((*(acc0+1)),(*(acc0+4)),(*(acc0+7)),(*(acc0+10))));
  write_imagef(data0_92160, (int2)((alu27+480),idx2), (float4)((*(acc0+2)),(*(acc0+5)),(*(acc0+8)),(*(acc0+11))));
}

__kernel void r_240_4_16_6(write_only image2d_t data0_960, read_only image2d_t data1_92160, __global float* data2_960) {
  __attribute__ ((aligned (16))) __local float temp0[64];
  float acc0[4];
  float acc1[4];
  int gidx0 = get_group_id(0); /* 240 */
  int lidx0 = get_local_id(0); /* 16 */
  *(acc1+0) = 0.0f;
  *(acc1+1) = 0.0f;
  *(acc1+2) = 0.0f;
  *(acc1+3) = 0.0f;
  float4 val0 = (*((__global float4*)((data2_960+(gidx0<<2)))));
  for (int ridx1003 = 0; ridx1003 < 6; ridx1003++) {
    int alu8 = (gidx0+(lidx0*1440)+(ridx1003*240));
    float4 val1 = read_imagef(data1_92160, smp, (int2)((alu8-(2880*((alu8*11651)>>25))),(lidx0>>1)));
    float alu9 = (val1.x+val0.x);
    float alu10 = (val1.y+val0.y);
    float alu11 = (val1.z+val0.z);
    float alu12 = (val1.w+val0.w);
    *(acc0+0) = ((*(acc0+0))+((1/(1.0f+exp2(((alu9+(0.044708251953125f*alu9*alu9*alu9))*-2.3021129851685216f))))*alu9));
    *(acc0+1) = ((*(acc0+1))+((1/(1.0f+exp2(((alu10+(0.044708251953125f*alu10*alu10*alu10))*-2.3021129851685216f))))*alu10));
    *(acc0+2) = ((*(acc0+2))+((1/(1.0f+exp2(((alu11+(0.044708251953125f*alu11*alu11*alu11))*-2.3021129851685216f))))*alu11));
    *(acc0+3) = ((*(acc0+3))+((1/(1.0f+exp2(((alu12+(0.044708251953125f*alu12*alu12*alu12))*-2.3021129851685216f))))*alu12));
  }
  *((__local float4*)((temp0+(lidx0<<2)))) = (float4)((*(acc0+0)),(*(acc0+1)),(*(acc0+2)),(*(acc0+3)));
  barrier(CLK_LOCAL_MEM_FENCE);
  if ((((bool)(lidx0))!=1)) {
    for (int ridx1102 = 0; ridx1102 < 16; ridx1102++) {
      float4 val2 = (*((__local float4*)((temp0+(ridx1102<<2)))));
      *(acc1+0) = ((*(acc1+0))+val2.x);
      *(acc1+1) = ((*(acc1+1))+val2.y);
      *(acc1+2) = ((*(acc1+2))+val2.z);
      *(acc1+3) = ((*(acc1+3))+val2.w);
    }
    write_imagef(data0_960, (int2)(gidx0,0), (float4)(((*(acc1+0))*0.010416666666666666f),((*(acc1+1))*0.010416666666666666f),((*(acc1+2))*0.010416666666666666f),((*(acc1+3))*0.010416666666666666f)));
  }
}

__kernel void r_320_4_16_15_4(write_only image2d_t data0_1280, read_only image2d_t data1_960, read_only image2d_t data2_1228800, __global half* data3_1280) {
  int gidx0 = get_group_id(0); /* 320 */
  half4 val0 = (*((__global half4*)((data3_1280+(gidx0<<2)))));
  for (int ridx1003 = 0; ridx1003 < 15; ridx1003++) {
    float4 val1 = read_imagef(data1_960, smp, (int2)(((lidx0*15)+ridx1003),0));
    int alu8 = ((lidx0*60)+(ridx1003<<2));
    float4 val2 = read_imagef(data2_1228800, smp, (int2)(alu8,gidx0));
    float4 val3 = read_imagef(data2_1228800, smp, (int2)((alu8+1),gidx0));
    float4 val4 = read_imagef(data2_1228800, smp, (int2)((alu8+2),gidx0));
    float4 val5 = read_imagef(data2_1228800, smp, (int2)((alu8+3),gidx0));
    *(acc0+1) = ((*(acc0+1))+(val1.x*val3.x)+(val1.y*val3.y)+(val1.z*val3.z)+(val1.w*val3.w));
    *(acc0+2) = ((*(acc0+2))+(val1.x*val4.x)+(val1.y*val4.y)+(val1.z*val4.z)+(val1.w*val4.w));
    *(acc0+3) = ((*(acc0+3))+(val1.x*val5.x)+(val1.y*val5.y)+(val1.z*val5.z)+(val1.w*val5.w));
    *(acc0+0) = ((*(acc0+0))+(val1.x*val2.x)+(val1.y*val2.y)+(val1.z*val2.z)+(val1.w*val2.w));
  }
      float4 val6 = (*((__local float4*)((temp0+(ridx1102<<2)))));
      *(acc1+0) = ((*(acc1+0))+val6.x);
      *(acc1+1) = ((*(acc1+1))+val6.y);
      *(acc1+2) = ((*(acc1+2))+val6.z);
      *(acc1+3) = ((*(acc1+3))+val6.w);
    }
    float alu22 = ((*(acc1+0))+((float)(val0.x)));
    float alu23 = ((*(acc1+1))+((float)(val0.y)));
    float alu24 = ((*(acc1+2))+((float)(val0.z)));
    float alu25 = ((*(acc1+3))+((float)(val0.w)));
    write_imagef(data0_1280, (int2)(gidx0,0), (float4)(((1/(1.0f+exp2(((alu22+(0.044708251953125f*alu22*alu22*alu22))*-2.3021129851685216f))))*alu22),((1/(1.0f+exp2(((alu23+(0.044708251953125f*alu23*alu23*alu23))*-2.3021129851685216f))))*alu23),((1/(1.0f+exp2(((alu24+(0.044708251953125f*alu24*alu24*alu24))*-2.3021129851685216f))))*alu24),((1/(1.0f+exp2(((alu25+(0.044708251953125f*alu25*alu25*alu25))*-2.3021129851685216f))))*alu25)));
  }
}

__kernel void r_128_4_16_20_4(write_only image2d_t data0_512, read_only image2d_t data1_1280, read_only image2d_t data2_655360, __global half* data3_512) {
  int gidx0 = get_group_id(0); /* 128 */
  half4 val0 = (*((__global half4*)((data3_512+(gidx0<<2)))));
  for (int ridx1003 = 0; ridx1003 < 20; ridx1003++) {
    float4 val1 = read_imagef(data1_1280, smp, (int2)(((lidx0*20)+ridx1003),0));
    int alu8 = ((lidx0*80)+(ridx1003<<2));
    float4 val2 = read_imagef(data2_655360, smp, (int2)(alu8,gidx0));
    float4 val3 = read_imagef(data2_655360, smp, (int2)((alu8+1),gidx0));
    float4 val4 = read_imagef(data2_655360, smp, (int2)((alu8+2),gidx0));
    float4 val5 = read_imagef(data2_655360, smp, (int2)((alu8+3),gidx0));
  }
    }
    write_imagef(data0_512, (int2)(gidx0,0), (float4)(((*(acc1+0))+((float)(val0.x))),((*(acc1+1))+((float)(val0.y))),((*(acc1+2))+((float)(val0.z))),((*(acc1+3))+((float)(val0.w)))));
  }
}

__kernel void E_128_4n1(write_only image2d_t data0_512, read_only image2d_t data1_512) {
  int2 cast0 = (int2)(idx0,0);
  float4 val0 = read_imagef(data1_512, smp, cast0);
  write_imagef(data0_512, cast0, val0);
}

__kernel void E_129_4(write_only image2d_t data0_516, read_only image2d_t data1_512, __global float* data2_3, __global half* data3_1, __global half* data4_1, __global half* data5_1, __global half* data6_1, __global half* data7_1, __global half* data8_1) {
  int idx0 = get_global_id(0); /* 129 */
  bool alu0 = (127<idx0);
  half val1 = (alu0?*(data3_1+0):((half)(0.0f)));
  half val2 = (alu0?*(data4_1+0):((half)(0.0f)));
  half val3 = (alu0?*(data5_1+0):((half)(0.0f)));
  half val4 = (alu0?*(data6_1+0):((half)(0.0f)));
  half val5 = (alu0?*(data7_1+0):((half)(0.0f)));
  half val6 = (alu0?*(data8_1+0):((half)(0.0f)));
  float val7 = (alu0?*(data2_3+0):0.0f);
  float val8 = (alu0?*(data2_3+1):0.0f);
  float val9 = (alu0?*(data2_3+2):0.0f);
  half alu1 = ((idx0<128)?((half)(0.0f)):((half)(0.56494140625f)));
  write_imagef(data0_516, cast0, (float4)((val0.x+((float)(((((half)(val7))+val1)*val2*alu1)))),(val0.y+((float)(((((half)(val8))+val3)*val4*alu1)))),(val0.z+((float)(((((half)(val9))+val5)*val6*alu1)))),val0.w));
}

__kernel void r_16_4_16_8_4(write_only image2d_t data0_64, read_only image2d_t data1_512, read_only image2d_t data2_32768, __global half* data3_64) {
  int gidx0 = get_group_id(0); /* 16 */
  half4 val0 = (*((__global half4*)((data3_64+(gidx0<<2)))));
  for (int ridx1003 = 0; ridx1003 < 8; ridx1003++) {
    float4 val1 = read_imagef(data1_512, smp, (int2)(((lidx0<<3)+ridx1003),0));
    int alu8 = ((lidx0<<5)+(ridx1003<<2));
    float4 val2 = read_imagef(data2_32768, smp, (int2)(alu8,gidx0));
    float4 val3 = read_imagef(data2_32768, smp, (int2)((alu8+1),gidx0));
    float4 val4 = read_imagef(data2_32768, smp, (int2)((alu8+2),gidx0));
    float4 val5 = read_imagef(data2_32768, smp, (int2)((alu8+3),gidx0));
  }
    }
    float alu26 = ((0.0f<alu22)?alu22:0.0f);
    float alu27 = ((0.0f<alu23)?alu23:0.0f);
    float alu28 = ((0.0f<alu24)?alu24:0.0f);
    float alu29 = ((0.0f<alu25)?alu25:0.0f);
    write_imagef(data0_64, (int2)(gidx0,0), (float4)(alu26,alu27,alu28,alu29));
  }
}

__kernel void r_8_4_16_8_4(write_only image2d_t data0_32, read_only image2d_t data1_512, read_only image2d_t data2_16384, __global half* data3_32) {
  int gidx0 = get_group_id(0); /* 8 */
  half4 val0 = (*((__global half4*)((data3_32+(gidx0<<2)))));
    float4 val2 = read_imagef(data2_16384, smp, (int2)(alu8,gidx0));
    float4 val3 = read_imagef(data2_16384, smp, (int2)((alu8+1),gidx0));
    float4 val4 = read_imagef(data2_16384, smp, (int2)((alu8+2),gidx0));
    float4 val5 = read_imagef(data2_16384, smp, (int2)((alu8+3),gidx0));
  }
    }
    write_imagef(data0_32, (int2)(gidx0,0), (float4)(alu26,alu27,alu28,alu29));
  }
}

__kernel void r_12_4_16_8_4(write_only image2d_t data0_48, read_only image2d_t data1_512, read_only image2d_t data2_24576, __global half* data3_48) {
  int gidx0 = get_group_id(0); /* 12 */
  half4 val0 = (*((__global half4*)((data3_48+(gidx0<<2)))));
    float4 val2 = read_imagef(data2_24576, smp, (int2)(alu8,gidx0));
    float4 val3 = read_imagef(data2_24576, smp, (int2)((alu8+1),gidx0));
    float4 val4 = read_imagef(data2_24576, smp, (int2)((alu8+2),gidx0));
    float4 val5 = read_imagef(data2_24576, smp, (int2)((alu8+3),gidx0));
  }
    }
    write_imagef(data0_48, (int2)(gidx0,0), (float4)(alu26,alu27,alu28,alu29));
  }
}

__kernel void r_12_4_129_4n2(write_only image2d_t data0_48, read_only image2d_t data1_516, read_only image2d_t data2_24768, __global half* data3_48) {
  int idx0 = get_global_id(0); /* 12 */
  for (int ridx1002 = 0; ridx1002 < 129; ridx1002++) {
    float4 val0 = read_imagef(data1_516, smp, (int2)(ridx1002,0));
    int alu4 = (ridx1002<<2);
    float4 val1 = read_imagef(data2_24768, smp, (int2)(alu4,idx0));
    float4 val2 = read_imagef(data2_24768, smp, (int2)((alu4+1),idx0));
    float4 val3 = read_imagef(data2_24768, smp, (int2)((alu4+2),idx0));
    float4 val4 = read_imagef(data2_24768, smp, (int2)((alu4+3),idx0));
    *(acc0+1) = ((*(acc0+1))+(val0.x*val2.x)+(val0.y*val2.y)+(val0.z*val2.z)+(val0.w*val2.w));
    *(acc0+2) = ((*(acc0+2))+(val0.x*val3.x)+(val0.y*val3.y)+(val0.z*val3.z)+(val0.w*val3.w));
    *(acc0+3) = ((*(acc0+3))+(val0.x*val4.x)+(val0.y*val4.y)+(val0.z*val4.z)+(val0.w*val4.w));
    *(acc0+0) = ((*(acc0+0))+(val0.x*val1.x)+(val0.y*val1.y)+(val0.z*val1.z)+(val0.w*val1.w));
  }
  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_48, (int2)(idx0,0), (float4)(alu14,alu15,alu16,alu17));
}

__kernel void r_12_4_16_4n2(write_only image2d_t data0_48, read_only image2d_t data1_64, read_only image2d_t data2_3072, __global half* data3_48) {
  float4 val1 = read_imagef(data1_64, smp, (int2)(lidx0,0));
  int alu4 = (lidx0<<2);
  float4 val2 = read_imagef(data2_3072, smp, (int2)(alu4,gidx0));
  float4 val3 = read_imagef(data2_3072, smp, (int2)((alu4+1),gidx0));
  float4 val4 = read_imagef(data2_3072, smp, (int2)((alu4+2),gidx0));
  float4 val5 = read_imagef(data2_3072, smp, (int2)((alu4+3),gidx0));
  *((__local float4*)((temp0+alu4))) = (float4)(((val1.x*val2.x)+(val1.y*val2.y)+(val1.z*val2.z)+(val1.w*val2.w)),((val1.x*val3.x)+(val1.y*val3.y)+(val1.z*val3.z)+(val1.w*val3.w)),((val1.x*val4.x)+(val1.y*val4.y)+(val1.z*val4.z)+(val1.w*val4.w)),((val1.x*val5.x)+(val1.y*val5.y)+(val1.z*val5.z)+(val1.w*val5.w)));
      *(acc0+0) = ((*(acc0+0))+val6.x);
      *(acc0+1) = ((*(acc0+1))+val6.y);
      *(acc0+2) = ((*(acc0+2))+val6.z);
      *(acc0+3) = ((*(acc0+3))+val6.w);
    }
    float alu13 = ((*(acc0+0))+((float)(val0.x)));
    float alu14 = ((*(acc0+1))+((float)(val0.y)));
    float alu15 = ((*(acc0+2))+((float)(val0.z)));
    float alu16 = ((*(acc0+3))+((float)(val0.w)));
    float alu17 = ((0.0f<alu13)?alu13:0.0f);
    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_48, (int2)(gidx0,0), (float4)(alu17,alu18,alu19,alu20));
  }
}

__kernel void r_6_4_8_4n2(write_only image2d_t data0_24, read_only image2d_t data1_32, read_only image2d_t data2_768, __global half* data3_24) {
  int idx0 = get_global_id(0); /* 6 */
  for (int ridx1002 = 0; ridx1002 < 8; ridx1002++) {
    float4 val0 = read_imagef(data1_32, smp, (int2)(ridx1002,0));
    float4 val1 = read_imagef(data2_768, smp, (int2)(alu4,idx0));
    float4 val2 = read_imagef(data2_768, smp, (int2)((alu4+1),idx0));
    float4 val3 = read_imagef(data2_768, smp, (int2)((alu4+2),idx0));
    float4 val4 = read_imagef(data2_768, smp, (int2)((alu4+3),idx0));
  }
  half4 val5 = (*((__global half4*)((data3_24+(idx0<<2)))));
  write_imagef(data0_24, (int2)(idx0,0), (float4)(alu14,alu15,alu16,alu17));
}

__kernel void r_8_4_12_4n2(write_only image2d_t data0_32, read_only image2d_t data1_48, read_only image2d_t data2_1536, __global half* data3_32) {
  for (int ridx1002 = 0; ridx1002 < 12; ridx1002++) {
    float4 val0 = read_imagef(data1_48, smp, (int2)(ridx1002,0));
    float4 val1 = read_imagef(data2_1536, smp, (int2)(alu4,idx0));
    float4 val2 = read_imagef(data2_1536, smp, (int2)((alu4+1),idx0));
    float4 val3 = read_imagef(data2_1536, smp, (int2)((alu4+2),idx0));
    float4 val4 = read_imagef(data2_1536, smp, (int2)((alu4+3),idx0));
  }
  half4 val5 = (*((__global half4*)((data3_32+(idx0<<2)))));
  write_imagef(data0_32, (int2)(idx0,0), (float4)(alu14,alu15,alu16,alu17));
}

__kernel void r_4_4_6_4n2(write_only image2d_t data0_16, read_only image2d_t data1_24, read_only image2d_t data2_384, __global half* data3_16) {
  for (int ridx1002 = 0; ridx1002 < 6; ridx1002++) {
    float4 val0 = read_imagef(data1_24, smp, (int2)(ridx1002,0));
    float4 val1 = read_imagef(data2_384, smp, (int2)(alu4,idx0));
    float4 val2 = read_imagef(data2_384, smp, (int2)((alu4+1),idx0));
    float4 val3 = read_imagef(data2_384, smp, (int2)((alu4+2),idx0));
    float4 val4 = read_imagef(data2_384, smp, (int2)((alu4+3),idx0));
  }
  half4 val5 = (*((__global half4*)((data3_16+(idx0<<2)))));
  write_imagef(data0_16, (int2)(idx0,0), (float4)(alu14,alu15,alu16,alu17));
}

__kernel void r_4_4_8_4n2(write_only image2d_t data0_16, read_only image2d_t data1_32, read_only image2d_t data2_512, __global half* data3_16) {
    float4 val1 = read_imagef(data2_512, smp, (int2)(alu4,idx0));
    float4 val2 = read_imagef(data2_512, smp, (int2)((alu4+1),idx0));
    float4 val3 = read_imagef(data2_512, smp, (int2)((alu4+2),idx0));
    float4 val4 = read_imagef(data2_512, smp, (int2)((alu4+3),idx0));
  }
}

__kernel void r_2_4_8_4n2(write_only image2d_t data0_8, read_only image2d_t data1_32, read_only image2d_t data2_256) {
  int idx0 = get_global_id(0); /* 2 */
    float4 val1 = read_imagef(data2_256, smp, (int2)(alu4,idx0));
    float4 val2 = read_imagef(data2_256, smp, (int2)((alu4+1),idx0));
    float4 val3 = read_imagef(data2_256, smp, (int2)((alu4+2),idx0));
    float4 val4 = read_imagef(data2_256, smp, (int2)((alu4+3),idx0));
  }
  write_imagef(data0_8, (int2)(idx0,0), (float4)((*(acc0+0)),(*(acc0+1)),(*(acc0+2)),(*(acc0+3))));
}

__kernel void r_4_8_4n2(write_only image2d_t data0_4, read_only image2d_t data1_32, read_only image2d_t data2_128) {
  for (int ridx1001 = 0; ridx1001 < 8; ridx1001++) {
    float4 val0 = read_imagef(data1_32, smp, (int2)(ridx1001,0));
    int alu4 = (ridx1001<<2);
    float4 val1 = read_imagef(data2_128, smp, (int2)(alu4,0));
    float4 val2 = read_imagef(data2_128, smp, (int2)((alu4+1),0));
    float4 val3 = read_imagef(data2_128, smp, (int2)((alu4+2),0));
    float4 val4 = read_imagef(data2_128, smp, (int2)((alu4+3),0));
  }
  write_imagef(data0_4, (int2)(0,0), (float4)((*(acc0+0)),(*(acc0+1)),(*(acc0+2)),(*(acc0+3))));
}

__kernel void r_4_4_4n2(write_only image2d_t data0_4, read_only image2d_t data1_16, read_only image2d_t data2_64) {
  for (int ridx1001 = 0; ridx1001 < 4; ridx1001++) {
    float4 val0 = read_imagef(data1_16, smp, (int2)(ridx1001,0));
    float4 val1 = read_imagef(data2_64, smp, (int2)(alu4,0));
    float4 val2 = read_imagef(data2_64, smp, (int2)((alu4+1),0));
    float4 val3 = read_imagef(data2_64, smp, (int2)((alu4+2),0));
    float4 val4 = read_imagef(data2_64, smp, (int2)((alu4+3),0));
  }
}

__kernel void r_4_4_4n5(write_only image2d_t data0_4, read_only image2d_t data1_16, read_only image2d_t data2_64, __global half* data3_4) {
  }
  half4 val5 = (*((__global half4*)((data3_4+0))));
  write_imagef(data0_4, (int2)(0,0), (float4)(((*(acc0+0))+((float)(val5.x))),((*(acc0+1))+((float)(val5.y))),((*(acc0+2))+((float)(val5.z))),((*(acc0+3))+((float)(val5.w)))));
}

__kernel void r_4_6_4n2(write_only image2d_t data0_4, read_only image2d_t data1_24, read_only image2d_t data2_96, __global half* data3_4) {
  for (int ridx1001 = 0; ridx1001 < 6; ridx1001++) {
    float4 val0 = read_imagef(data1_24, smp, (int2)(ridx1001,0));
    float4 val1 = read_imagef(data2_96, smp, (int2)(alu4,0));
    float4 val2 = read_imagef(data2_96, smp, (int2)((alu4+1),0));
    float4 val3 = read_imagef(data2_96, smp, (int2)((alu4+2),0));
    float4 val4 = read_imagef(data2_96, smp, (int2)((alu4+3),0));
  }
}

__kernel void r_4_6_4n5(write_only image2d_t data0_4, read_only image2d_t data1_24, read_only image2d_t data2_96) {
  }
}

__kernel void E_149_4(__global float* data0_596, read_only image2d_t data1_8, __global half* data2_6, read_only image2d_t data3_8, __global half* data4_6, read_only image2d_t data5_4, __global half* data6_1, read_only image2d_t data7_4, read_only image2d_t data8_4, read_only image2d_t data9_4, __global half* data10_1, read_only image2d_t data11_4, read_only image2d_t data12_4, read_only image2d_t data13_4, __global half* data14_1, read_only image2d_t data15_4, __global half* data16_1, read_only image2d_t data17_4, __global half* data18_1, read_only image2d_t data19_4, __global half* data20_1, read_only image2d_t data21_4, __global half* data22_1, read_only image2d_t data23_4, read_only image2d_t data24_4, __global half* data25_1, read_only image2d_t data26_4, __global half* data27_1, read_only image2d_t data28_8, __global half* data29_6, read_only image2d_t data30_8, __global half* data31_6, read_only image2d_t data32_4, __global half* data33_1, read_only image2d_t data34_4, read_only image2d_t data35_4, read_only image2d_t data36_4, __global half* data37_1, read_only image2d_t data38_4, read_only image2d_t data39_4, read_only image2d_t data40_4, __global half* data41_1, read_only image2d_t data42_4, __global half* data43_1, read_only image2d_t data44_4, __global half* data45_1, read_only image2d_t data46_4, __global half* data47_1, read_only image2d_t data48_4, __global half* data49_1, read_only image2d_t data50_4, read_only image2d_t data51_4, __global half* data52_1, read_only image2d_t data53_4, __global half* data54_1, read_only image2d_t data55_4, __global half* data56_1, read_only image2d_t data57_4, __global half* data58_1, read_only image2d_t data59_512) {
  int idx0 = get_global_id(0); /* 149 */
  int2 cast0 = (int2)(0,0);
  half2 cast1 = (half2)(((half)(0.0f)),((half)(0.0f)));
  float4 cast2 = (float4)(0.0f,0.0f,0.0f,0.0f);
  float4 val0 = read_imagef(data1_8, smp, (int2)(idx0,0));
  float4 val1 = read_imagef(data59_512, smp, (int2)((idx0+-21),0));
  float4 val2 = read_imagef(data30_8, smp, (int2)((idx0+-12),0));
  float4 val3 = read_imagef(data30_8, smp, (int2)((idx0+-11),0));
  float4 val4 = read_imagef(data28_8, smp, (int2)((idx0+-10),0));
  float4 val5 = read_imagef(data3_8, smp, (int2)((idx0+-1),0));
  int alu0 = (idx0<<2);
  bool alu1 = (idx0<1);
  half2 val6 = (alu1?*((__global half2*)((data2_6+2))):cast1);
  float4 val7 = (alu1?read_imagef(data1_8, smp, cast0):cast2);
  half2 val8 = ((idx0<2)?*((__global half2*)((data2_6+alu0))):cast1);
  bool alu2 = (idx0==2);
  half2 val9 = (alu2?*((__global half2*)((data4_6+2))):cast1);
  float4 val10 = (alu2?read_imagef(data3_8, smp, cast0):cast2);
  bool alu3 = (idx0==3);
  half val11 = (alu3?*(data6_1+0):((half)(0.0f)));
  float4 val12 = (alu3?read_imagef(data5_4, smp, cast0):cast2);
  float4 val13 = (alu3?read_imagef(data7_4, smp, cast0):cast2);
  bool alu4 = (idx0==4);
  float4 val14 = (alu4?read_imagef(data7_4, smp, cast0):cast2);
  float4 val15 = (alu4?read_imagef(data8_4, smp, cast0):cast2);
  bool alu5 = (idx0==5);
  half val16 = (alu5?*(data10_1+0):((half)(0.0f)));
  float4 val17 = (alu5?read_imagef(data8_4, smp, cast0):cast2);
  float4 val18 = (alu5?read_imagef(data9_4, smp, cast0):cast2);
  float4 val19 = (alu5?read_imagef(data11_4, smp, cast0):cast2);
  bool alu6 = (idx0==6);
  float4 val20 = (alu6?read_imagef(data11_4, smp, cast0):cast2);
  float4 val21 = (alu6?read_imagef(data12_4, smp, cast0):cast2);
  bool alu7 = (idx0==7);
  half val22 = (alu7?*(data14_1+0):((half)(0.0f)));
  half val23 = (alu7?*(data16_1+0):((half)(0.0f)));
  float4 val24 = (alu7?read_imagef(data12_4, smp, cast0):cast2);
  float4 val25 = (alu7?read_imagef(data13_4, smp, cast0):cast2);
  float4 val26 = (alu7?read_imagef(data15_4, smp, cast0):cast2);
  bool alu8 = (idx0==8);
  half val27 = (alu8?*(data18_1+0):((half)(0.0f)));
  half val28 = (alu8?*(data20_1+0):((half)(0.0f)));
  half val29 = (alu8?*(data22_1+0):((half)(0.0f)));
  float4 val30 = (alu8?read_imagef(data17_4, smp, cast0):cast2);
  float4 val31 = (alu8?read_imagef(data19_4, smp, cast0):cast2);
  float4 val32 = (alu8?read_imagef(data21_4, smp, cast0):cast2);
  float4 val33 = (alu8?read_imagef(data23_4, smp, cast0):cast2);
  bool alu9 = (idx0==9);
  half val34 = (alu9?*(data25_1+0):((half)(0.0f)));
  float4 val35 = (alu9?read_imagef(data23_4, smp, cast0):cast2);
  float4 val36 = (alu9?read_imagef(data24_4, smp, cast0):cast2);
  bool alu10 = (idx0==10);
  half val37 = (alu10?*(data27_1+0):((half)(0.0f)));
  half val38 = (alu10?*(data29_6+2):((half)(0.0f)));
  float4 val39 = (alu10?read_imagef(data26_4, smp, cast0):cast2);
  float4 val40 = (alu10?read_imagef(data28_8, smp, cast0):cast2);
  bool alu11 = (idx0==11);
  half val41 = (alu11?*(data29_6+3):((half)(0.0f)));
  float4 val42 = (alu11?read_imagef(data28_8, smp, cast0):cast2);
  bool alu12 = (idx0==12);
  half2 val43 = (alu12?*((__global half2*)((data31_6+2))):cast1);
  float4 val44 = (alu12?read_imagef(data30_8, smp, cast0):cast2);
  bool alu13 = (idx0==13);
  half val45 = (alu13?*(data33_1+0):((half)(0.0f)));
  float4 val46 = (alu13?read_imagef(data32_4, smp, cast0):cast2);
  float4 val47 = (alu13?read_imagef(data34_4, smp, cast0):cast2);
  bool alu14 = (idx0==14);
  float4 val48 = (alu14?read_imagef(data34_4, smp, cast0):cast2);
  float4 val49 = (alu14?read_imagef(data35_4, smp, cast0):cast2);
  bool alu15 = (idx0==15);
  half val50 = (alu15?*(data37_1+0):((half)(0.0f)));
  float4 val51 = (alu15?read_imagef(data35_4, smp, cast0):cast2);
  float4 val52 = (alu15?read_imagef(data36_4, smp, cast0):cast2);
  float4 val53 = (alu15?read_imagef(data38_4, smp, cast0):cast2);
  bool alu16 = (idx0==16);
  float4 val54 = (alu16?read_imagef(data38_4, smp, cast0):cast2);
  float4 val55 = (alu16?read_imagef(data39_4, smp, cast0):cast2);
  bool alu17 = (idx0==17);
  half val56 = (alu17?*(data41_1+0):((half)(0.0f)));
  float4 val57 = (alu17?read_imagef(data39_4, smp, cast0):cast2);
  float4 val58 = (alu17?read_imagef(data40_4, smp, cast0):cast2);
  bool alu18 = (idx0==18);
  half val59 = (alu18?*(data43_1+0):((half)(0.0f)));
  half val60 = (alu18?*(data45_1+0):((half)(0.0f)));
  half val61 = (alu18?*(data47_1+0):((half)(0.0f)));
  half val62 = (alu18?*(data49_1+0):((half)(0.0f)));
  float4 val63 = (alu18?read_imagef(data42_4, smp, cast0):cast2);
  float4 val64 = (alu18?read_imagef(data44_4, smp, cast0):cast2);
  float4 val65 = (alu18?read_imagef(data46_4, smp, cast0):cast2);
  float4 val66 = (alu18?read_imagef(data48_4, smp, cast0):cast2);
  float4 val67 = ((idx0==19)?read_imagef(data50_4, smp, cast0):cast2);
  bool alu19 = (idx0==20);
  half val68 = (alu19?*(data52_1+0):((half)(0.0f)));
  half val69 = (alu19?*(data54_1+0):((half)(0.0f)));
  half val70 = (alu19?*(data56_1+0):((half)(0.0f)));
  half val71 = (alu19?*(data58_1+0):((half)(0.0f)));
  float4 val72 = (alu19?read_imagef(data51_4, smp, cast0):cast2);
  float4 val73 = (alu19?read_imagef(data53_4, smp, cast0):cast2);
  float4 val74 = (alu19?read_imagef(data55_4, smp, cast0):cast2);
  float4 val75 = (alu19?read_imagef(data57_4, smp, cast0):cast2);
  half2 val76 = (((0<idx0)&(idx0<3))?*((__global half2*)((data4_6+(alu0+-4)))):cast1);
  half2 val77 = (((9<idx0)&(idx0<12))?*((__global half2*)((data29_6+(alu0+-40)))):cast1);
  half val78 = (((10<idx0)&(idx0<13))?*(data31_6+(alu0+-44)):((half)(0.0f)));
  half val79 = (((11<idx0)&(idx0<14))?*(data31_6+(alu0+-47)):((half)(0.0f)));
  *((__global float4*)((data0_596+alu0))) = (float4)((val0.x+((float)(val8.x))+val10.z+((float)(val9.x))+val12.x+((float)(val11))+val14.w+val17.w+val20.z+val24.z+val30.x+((float)(val27))+val35.y+val39.x+((float)(val37))+val42.w+((float)(val41))+val2.y+((float)(val79))+val48.z+val51.z+val54.y+val57.y+val63.x+((float)(val59))+val67.x+val72.x+((float)(val68))+val1.x),(val0.y+((float)(val8.y))+val10.w+((float)(val9.y))+val13.x+val15.x+val18.x+((float)(val16))+val20.w+val24.w+val31.x+((float)(val28))+val35.z+val4.x+((float)(val77.x))+val44.z+((float)(val43.x))+val46.x+((float)(val45))+val48.w+val51.w+val54.z+val57.z+val64.x+((float)(val60))+val67.y+val73.x+((float)(val69))+val1.y),(val7.z+((float)(val6.x))+val5.x+((float)(val76.x))+val13.y+val15.y+val19.x+val21.x+val25.x+((float)(val22))+val32.x+((float)(val29))+val35.w+val4.y+((float)(val77.y))+val44.w+((float)(val43.y))+val47.x+val49.x+val52.x+((float)(val50))+val54.w+val57.w+val65.x+((float)(val61))+val67.z+val74.x+((float)(val70))+val1.z),(val7.w+((float)(val6.y))+val5.y+((float)(val76.y))+val13.z+val15.z+val19.y+val21.y+val26.x+((float)(val23))+val33.x+val36.x+((float)(val34))+val40.z+((float)(val38))+val3.x+((float)(val78))+val47.y+val49.y+val53.x+val55.x+val58.x+((float)(val56))+val66.x+((float)(val62))+val67.w+val75.x+((float)(val71))+val1.w));
}