#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 ridx1007 = 0; ridx1007 < 4; ridx1007++) {
    for (int ridx1009 = 0; ridx1009 < 3; ridx1009++) {
      int alu13 = ((idx2<<1)+ridx1009+-1);
      for (int ridx1010 = 0; ridx1010 < 3; ridx1010++) {
        int alu14 = (ridx1010<<2);
        int alu15 = (alu0+ridx1007+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 = ((ridx1007*12)+(ridx1009*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 ridx1007 = 0; ridx1007 < 8; ridx1007++) {
      int alu12 = ((idx2<<1)+ridx1009+-1);
        int alu13 = ((idx1*48)+ridx1007+(ridx1010<<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 = ((ridx1007*12)+(ridx1009*96)+(ridx1010<<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_1800_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 idx1 = get_global_id(1); /* 1800 */
  int alu0 = ((idx1*2185)>>16);
  int alu1 = (idx1*24);
    int alu14 = (alu1+ridx1007);
    int alu15 = (alu14+8);
    int alu16 = (alu14+16);
    int alu17 = (ridx1007<<2);
    float4 val0 = read_imagef(data2_1024, smp, (int2)(alu17,idx0));
    float4 val1 = read_imagef(data2_1024, smp, (int2)((alu17+1),idx0));
    float4 val2 = read_imagef(data2_1024, smp, (int2)((alu17+2),idx0));
    float4 val3 = read_imagef(data2_1024, smp, (int2)((alu17+3),idx0));
    float4 val4 = read_imagef(data1_172800, smp, (int2)((alu15-(720*((alu15*11651)>>23))),alu0));
    float4 val5 = read_imagef(data1_172800, smp, (int2)((alu16-(720*((alu16*11651)>>23))),alu0));
    float4 val6 = read_imagef(data1_172800, smp, (int2)((alu14-(720*((alu14*11651)>>23))),alu0));
    *(acc0+1) = ((*(acc0+1))+(val4.x*val0.x)+(val4.y*val1.x)+(val4.z*val2.x)+(val4.w*val3.x));
    *(acc0+4) = ((*(acc0+4))+(val4.x*val0.y)+(val4.y*val1.y)+(val4.z*val2.y)+(val4.w*val3.y));
    *(acc0+7) = ((*(acc0+7))+(val4.x*val0.z)+(val4.y*val1.z)+(val4.z*val2.z)+(val4.w*val3.z));
    *(acc0+10) = ((*(acc0+10))+(val4.x*val0.w)+(val4.y*val1.w)+(val4.z*val2.w)+(val4.w*val3.w));
    *(acc0+2) = ((*(acc0+2))+(val5.x*val0.x)+(val5.y*val1.x)+(val5.z*val2.x)+(val5.w*val3.x));
    *(acc0+5) = ((*(acc0+5))+(val5.x*val0.y)+(val5.y*val1.y)+(val5.z*val2.y)+(val5.w*val3.y));
    *(acc0+8) = ((*(acc0+8))+(val5.x*val0.z)+(val5.y*val1.z)+(val5.z*val2.z)+(val5.w*val3.z));
    *(acc0+11) = ((*(acc0+11))+(val5.x*val0.w)+(val5.y*val1.w)+(val5.z*val2.w)+(val5.w*val3.w));
    *(acc0+0) = ((*(acc0+0))+(val6.x*val0.x)+(val6.y*val1.x)+(val6.z*val2.x)+(val6.w*val3.x));
    *(acc0+3) = ((*(acc0+3))+(val6.x*val0.y)+(val6.y*val1.y)+(val6.z*val2.y)+(val6.w*val3.y));
    *(acc0+6) = ((*(acc0+6))+(val6.x*val0.z)+(val6.y*val1.z)+(val6.z*val2.z)+(val6.w*val3.z));
    *(acc0+9) = ((*(acc0+9))+(val6.x*val0.w)+(val6.y*val1.w)+(val6.z*val2.w)+(val6.w*val3.w));
  }
  int alu31 = (idx0+alu1);
  int alu32 = (alu31+8);
  int alu33 = (alu31+16);
  float alu34 = ((*(acc0+0))+val7.x);
  float alu35 = ((*(acc0+1))+val7.x);
  float alu36 = ((*(acc0+2))+val7.x);
  float alu37 = ((*(acc0+3))+val7.y);
  float alu38 = ((*(acc0+4))+val7.y);
  float alu39 = ((*(acc0+5))+val7.y);
  float alu40 = ((*(acc0+6))+val7.z);
  float alu41 = ((*(acc0+7))+val7.z);
  float alu42 = ((*(acc0+8))+val7.z);
  float alu43 = ((*(acc0+9))+val7.w);
  float alu44 = ((*(acc0+10))+val7.w);
  float alu45 = ((*(acc0+11))+val7.w);
  write_imagef(data0_172800, (int2)((alu31-(720*((alu31*11651)>>23))),alu0), (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_172800, (int2)((alu32-(720*((alu32*11651)>>23))),alu0), (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_172800, (int2)((alu33-(720*((alu33*11651)>>23))),alu0), (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_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_450_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 */
  int idx1 = get_global_id(1); /* 450 */
  int alu0 = ((idx1*547)>>13);
  for (int ridx1007 = 0; ridx1007 < 24; ridx1007++) {
    int alu13 = ((idx1*72)+ridx1007);
    int alu14 = (alu13+24);
    int alu15 = (alu13+48);
    int alu16 = (ridx1007<<2);
    float4 val0 = read_imagef(data2_6144, smp, (int2)(alu16,idx0));
    float4 val1 = read_imagef(data2_6144, smp, (int2)((alu16+1),idx0));
    float4 val2 = read_imagef(data2_6144, smp, (int2)((alu16+2),idx0));
    float4 val3 = read_imagef(data2_6144, smp, (int2)((alu16+3),idx0));
    float4 val4 = read_imagef(data1_129600, smp, (int2)((alu14-(1080*((alu14*31069)>>25))),alu0));
    float4 val5 = read_imagef(data1_129600, smp, (int2)((alu15-(1080*((alu15*31069)>>25))),alu0));
    float4 val6 = read_imagef(data1_129600, smp, (int2)((alu13-(1080*((alu13*31069)>>25))),alu0));
  }
  float4 val7 = (*((__global float4*)((data3_64+(idx0<<2)))));
  int alu42 = (idx0+(idx1*48));
  int alu43 = (alu42+16);
  int alu44 = (alu42+32);
  write_imagef(data0_86400, (int2)((alu42-(720*((alu42*11651)>>23))),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_86400, (int2)((alu43-(720*((alu43*11651)>>23))),alu0), (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_86400, (int2)((alu44-(720*((alu44*11651)>>23))),alu0), (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_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 ridx1009 = 0; ridx1009 < 5; ridx1009++) {
    int alu15 = (idx2+ridx1009+-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 = (ridx1009*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_450_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 ridx1007 = 0; ridx1007 < 16; ridx1007++) {
    int alu13 = ((idx1*48)+ridx1007);
    int alu14 = (alu13+16);
    int alu15 = (alu13+32);
    float4 val0 = read_imagef(data2_12288, smp, (int2)(alu16,idx0));
    float4 val1 = read_imagef(data2_12288, smp, (int2)((alu16+1),idx0));
    float4 val2 = read_imagef(data2_12288, smp, (int2)((alu16+2),idx0));
    float4 val3 = read_imagef(data2_12288, smp, (int2)((alu16+3),idx0));
    float4 val4 = read_imagef(data1_86400, smp, (int2)((alu14-(720*((alu14*11651)>>23))),alu0));
    float4 val5 = read_imagef(data1_86400, smp, (int2)((alu15-(720*((alu15*11651)>>23))),alu0));
    float4 val6 = read_imagef(data1_86400, smp, (int2)((alu13-(720*((alu13*11651)>>23))),alu0));
  }
  float4 val7 = (*((__global float4*)((data3_192+(idx0<<2)))));
  int alu42 = (idx0+(idx1*144));
  int alu43 = (alu42+48);
  int alu44 = (alu42+96);
  write_imagef(data0_259200, (int2)((alu42-(2160*((alu42*31069)>>26))),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_259200, (int2)((alu43-(2160*((alu43*31069)>>26))),alu0), (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_259200, (int2)((alu44-(2160*((alu44*31069)>>26))),alu0), (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_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)+ridx1009);
    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 = (ridx1009*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_115_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 idx1 = get_global_id(1); /* 115 */
  for (int ridx1007 = 0; ridx1007 < 48; ridx1007++) {
    int alu12 = ((idx1*144)+ridx1007);
    int alu13 = (alu12+48);
    int alu14 = (alu12+96);
    int alu15 = (ridx1007<<2);
    float4 val0 = read_imagef(data2_18432, smp, (int2)(alu15,idx0));
    float4 val1 = read_imagef(data2_18432, smp, (int2)((alu15+1),idx0));
    float4 val2 = read_imagef(data2_18432, smp, (int2)((alu15+2),idx0));
    float4 val3 = read_imagef(data2_18432, smp, (int2)((alu15+3),idx0));
    int alu16 = ((alu13*15197)>>24);
    int alu17 = ((alu14*15197)>>24);
    int alu18 = ((alu12*15197)>>24);
    float4 val4 = read_imagef(data1_66240, smp, (int2)((alu13-(1104*alu16)),alu16));
    float4 val5 = read_imagef(data1_66240, smp, (int2)((alu14-(1104*alu17)),alu17));
    float4 val6 = read_imagef(data1_66240, smp, (int2)((alu12-(1104*alu18)),alu18));
  }
  int alu32 = (idx0+(idx1*72));
  int alu33 = (alu32+24);
  int alu34 = (alu32+48);
  int alu35 = ((alu32*7599)>>22);
  int alu36 = ((alu33*7599)>>22);
  int alu37 = ((alu34*7599)>>22);
  write_imagef(data0_33120, (int2)((alu32-(552*alu35)),alu35), (float4)(((*(acc0+0))+val7.x),((*(acc0+3))+val7.y),((*(acc0+6))+val7.z),((*(acc0+9))+val7.w)));
  write_imagef(data0_33120, (int2)((alu33-(552*alu36)),alu36), (float4)(((*(acc0+1))+val7.x),((*(acc0+4))+val7.y),((*(acc0+7))+val7.z),((*(acc0+10))+val7.w)));
  write_imagef(data0_33120, (int2)((alu34-(552*alu37)),alu37), (float4)(((*(acc0+2))+val7.x),((*(acc0+5))+val7.y),((*(acc0+8))+val7.z),((*(acc0+11))+val7.w)));
}

__kernel void r_115_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 alu12 = ((idx1*72)+ridx1007);
    int alu13 = (alu12+24);
    int alu14 = (alu12+48);
    int alu16 = ((alu13*7599)>>22);
    int alu17 = ((alu14*7599)>>22);
    int alu18 = ((alu12*7599)>>22);
    float4 val4 = read_imagef(data1_33120, smp, (int2)((alu13-(552*alu16)),alu16));
    float4 val5 = read_imagef(data1_33120, smp, (int2)((alu14-(552*alu17)),alu17));
    float4 val6 = read_imagef(data1_33120, smp, (int2)((alu12-(552*alu18)),alu18));
  }
  float alu32 = ((*(acc0+0))+val7.x);
  float alu33 = ((*(acc0+1))+val7.x);
  float alu34 = ((*(acc0+2))+val7.x);
  float alu35 = ((*(acc0+3))+val7.y);
  float alu36 = ((*(acc0+4))+val7.y);
  float alu37 = ((*(acc0+5))+val7.y);
  float alu38 = ((*(acc0+6))+val7.z);
  float alu39 = ((*(acc0+7))+val7.z);
  float alu40 = ((*(acc0+8))+val7.z);
  float alu41 = ((*(acc0+9))+val7.w);
  float alu42 = ((*(acc0+10))+val7.w);
  float alu43 = ((*(acc0+11))+val7.w);
  int alu44 = (idx0+(idx1*144));
  int alu45 = (alu44+48);
  int alu46 = (alu44+96);
  int alu47 = ((alu44*15197)>>24);
  int alu48 = ((alu45*15197)>>24);
  int alu49 = ((alu46*15197)>>24);
  write_imagef(data0_66240, (int2)((alu44-(1104*alu47)),alu47), (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)));
  write_imagef(data0_66240, (int2)((alu45-(1104*alu48)),alu48), (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_66240, (int2)((alu46-(1104*alu49)),alu49), (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)));
}

__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)(2,idx0));
  float4 val3 = read_imagef(data2_1728, smp, (int2)(3,idx0));
  float4 val4 = read_imagef(data2_1728, smp, (int2)(4,idx0));
  float4 val5 = read_imagef(data2_1728, smp, (int2)(5,idx0));
  float4 val6 = read_imagef(data2_1728, smp, (int2)(6,idx0));
  float4 val7 = read_imagef(data2_1728, smp, (int2)(7,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, cast0);
  float4 val10 = read_imagef(data1_66240, smp, (int2)(alu1,alu3));
  float4 val11 = read_imagef(data1_66240, smp, (int2)(alu2,alu3));
  int alu4 = (alu3+-1);
  float4 val12 = read_imagef(data1_66240, smp, (int2)(alu0,alu4));
  float4 val13 = read_imagef(data1_66240, smp, (int2)(alu1,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, cast1);
  float4 val16 = read_imagef(data1_66240, smp, (int2)(alu1,alu5));
  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)(alu1,alu7));
  float4 val22 = read_imagef(data1_66240, smp, (int2)(alu0,alu7));
  float4 val23 = read_imagef(data1_66240, smp, (int2)(alu2,alu7));
  float4 val24 = (*((__global float4*)((data3_192+(idx0<<2)))));
  float alu8 = ((val16.x*val0.x)+(val15.x*val1.x)+(val17.x*val2.x)+(val18.x*val3.x)+(val19.x*val4.x)+(val20.x*val5.x)+(val21.x*val6.x)+(val22.x*val7.x)+(val23.x*val8.x)+val24.x);
  float alu9 = ((val10.x*val0.x)+(val9.x*val1.x)+(val11.x*val2.x)+(val16.x*val3.x)+(val15.x*val4.x)+(val17.x*val5.x)+(val18.x*val6.x)+(val19.x*val7.x)+(val20.x*val8.x)+val24.x);
  float alu10 = ((val13.x*val0.x)+(val12.x*val1.x)+(val14.x*val2.x)+(val10.x*val3.x)+(val9.x*val4.x)+(val11.x*val5.x)+(val16.x*val6.x)+(val15.x*val7.x)+(val17.x*val8.x)+val24.x);
  float alu11 = ((val16.y*val0.y)+(val15.y*val1.y)+(val17.y*val2.y)+(val18.y*val3.y)+(val19.y*val4.y)+(val20.y*val5.y)+(val21.y*val6.y)+(val22.y*val7.y)+(val23.y*val8.y)+val24.y);
  float alu12 = ((val10.y*val0.y)+(val9.y*val1.y)+(val11.y*val2.y)+(val16.y*val3.y)+(val15.y*val4.y)+(val17.y*val5.y)+(val18.y*val6.y)+(val19.y*val7.y)+(val20.y*val8.y)+val24.y);
  float alu13 = ((val13.y*val0.y)+(val12.y*val1.y)+(val14.y*val2.y)+(val10.y*val3.y)+(val9.y*val4.y)+(val11.y*val5.y)+(val16.y*val6.y)+(val15.y*val7.y)+(val17.y*val8.y)+val24.y);
  float alu14 = ((val16.z*val0.z)+(val15.z*val1.z)+(val17.z*val2.z)+(val18.z*val3.z)+(val19.z*val4.z)+(val20.z*val5.z)+(val21.z*val6.z)+(val22.z*val7.z)+(val23.z*val8.z)+val24.z);
  float alu15 = ((val10.z*val0.z)+(val9.z*val1.z)+(val11.z*val2.z)+(val16.z*val3.z)+(val15.z*val4.z)+(val17.z*val5.z)+(val18.z*val6.z)+(val19.z*val7.z)+(val20.z*val8.z)+val24.z);
  float alu16 = ((val13.z*val0.z)+(val12.z*val1.z)+(val14.z*val2.z)+(val10.z*val3.z)+(val9.z*val4.z)+(val11.z*val5.z)+(val16.z*val6.z)+(val15.z*val7.z)+(val17.z*val8.z)+val24.z);
  float alu17 = ((val16.w*val0.w)+(val15.w*val1.w)+(val17.w*val2.w)+(val18.w*val3.w)+(val19.w*val4.w)+(val20.w*val5.w)+(val21.w*val6.w)+(val22.w*val7.w)+(val23.w*val8.w)+val24.w);
  float alu18 = ((val10.w*val0.w)+(val9.w*val1.w)+(val11.w*val2.w)+(val16.w*val3.w)+(val15.w*val4.w)+(val17.w*val5.w)+(val18.w*val6.w)+(val19.w*val7.w)+(val20.w*val8.w)+val24.w);
  float alu19 = ((val13.w*val0.w)+(val12.w*val1.w)+(val14.w*val2.w)+(val10.w*val3.w)+(val9.w*val4.w)+(val11.w*val5.w)+(val16.w*val6.w)+(val15.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_115_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)((alu32-(552*alu35)),alu35);
  float4 val8 = read_imagef(data4_33120, smp, cast0);
  int2 cast1 = (int2)((alu33-(552*alu36)),alu36);
  float4 val9 = read_imagef(data4_33120, smp, cast1);
  int2 cast2 = (int2)((alu34-(552*alu37)),alu37);
  float4 val10 = read_imagef(data4_33120, smp, cast2);
  write_imagef(data0_33120, cast0, (float4)(((*(acc0+0))+val7.x+val8.x),((*(acc0+3))+val7.y+val8.y),((*(acc0+6))+val7.z+val8.z),((*(acc0+9))+val7.w+val8.w)));
  write_imagef(data0_33120, cast1, (float4)(((*(acc0+1))+val7.x+val9.x),((*(acc0+4))+val7.y+val9.y),((*(acc0+7))+val7.z+val9.z),((*(acc0+10))+val7.w+val9.w)));
  write_imagef(data0_33120, cast2, (float4)(((*(acc0+2))+val7.x+val10.x),((*(acc0+5))+val7.y+val10.y),((*(acc0+8))+val7.z+val10.z),((*(acc0+11))+val7.w+val10.w)));
}

__kernel void r_5_23_24_4_3_3_3(write_only image2d_t data0_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)(2,idx0));
  float4 val3 = read_imagef(data2_864, smp, (int2)(3,idx0));
  float4 val4 = read_imagef(data2_864, smp, (int2)(4,idx0));
  float4 val5 = read_imagef(data2_864, smp, (int2)(5,idx0));
  float4 val6 = read_imagef(data2_864, smp, (int2)(6,idx0));
  float4 val7 = read_imagef(data2_864, smp, (int2)(7,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, cast0);
  float4 val10 = read_imagef(data1_33120, smp, (int2)(alu1,alu3));
  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, cast1);
  float4 val16 = read_imagef(data1_33120, smp, (int2)(alu1,alu5));
  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)(((val16.x*val0.x)+(val15.x*val1.x)+(val17.x*val2.x)+(val18.x*val3.x)+(val19.x*val4.x)+(val20.x*val5.x)+(val21.x*val6.x)+(val22.x*val7.x)+(val23.x*val8.x)+val24.x),((val16.y*val0.y)+(val15.y*val1.y)+(val17.y*val2.y)+(val18.y*val3.y)+(val19.y*val4.y)+(val20.y*val5.y)+(val21.y*val6.y)+(val22.y*val7.y)+(val23.y*val8.y)+val24.y),((val16.z*val0.z)+(val15.z*val1.z)+(val17.z*val2.z)+(val18.z*val3.z)+(val19.z*val4.z)+(val20.z*val5.z)+(val21.z*val6.z)+(val22.z*val7.z)+(val23.z*val8.z)+val24.z),((val16.w*val0.w)+(val15.w*val1.w)+(val17.w*val2.w)+(val18.w*val3.w)+(val19.w*val4.w)+(val20.w*val5.w)+(val21.w*val6.w)+(val22.w*val7.w)+(val23.w*val8.w)+val24.w)));
  write_imagef(data0_33120, cast1, (float4)(((val10.x*val0.x)+(val9.x*val1.x)+(val11.x*val2.x)+(val16.x*val3.x)+(val15.x*val4.x)+(val17.x*val5.x)+(val18.x*val6.x)+(val19.x*val7.x)+(val20.x*val8.x)+val24.x),((val10.y*val0.y)+(val9.y*val1.y)+(val11.y*val2.y)+(val16.y*val3.y)+(val15.y*val4.y)+(val17.y*val5.y)+(val18.y*val6.y)+(val19.y*val7.y)+(val20.y*val8.y)+val24.y),((val10.z*val0.z)+(val9.z*val1.z)+(val11.z*val2.z)+(val16.z*val3.z)+(val15.z*val4.z)+(val17.z*val5.z)+(val18.z*val6.z)+(val19.z*val7.z)+(val20.z*val8.z)+val24.z),((val10.w*val0.w)+(val9.w*val1.w)+(val11.w*val2.w)+(val16.w*val3.w)+(val15.w*val4.w)+(val17.w*val5.w)+(val18.w*val6.w)+(val19.w*val7.w)+(val20.w*val8.w)+val24.w)));
  write_imagef(data0_33120, cast0, (float4)(((val13.x*val0.x)+(val12.x*val1.x)+(val14.x*val2.x)+(val10.x*val3.x)+(val9.x*val4.x)+(val11.x*val5.x)+(val16.x*val6.x)+(val15.x*val7.x)+(val17.x*val8.x)+val24.x),((val13.y*val0.y)+(val12.y*val1.y)+(val14.y*val2.y)+(val10.y*val3.y)+(val9.y*val4.y)+(val11.y*val5.y)+(val16.y*val6.y)+(val15.y*val7.y)+(val17.y*val8.y)+val24.y),((val13.z*val0.z)+(val12.z*val1.z)+(val14.z*val2.z)+(val10.z*val3.z)+(val9.z*val4.z)+(val11.z*val5.z)+(val16.z*val6.z)+(val15.z*val7.z)+(val17.z*val8.z)+val24.z),((val13.w*val0.w)+(val12.w*val1.w)+(val14.w*val2.w)+(val10.w*val3.w)+(val9.w*val4.w)+(val11.w*val5.w)+(val16.w*val6.w)+(val15.w*val7.w)+(val17.w*val8.w)+val24.w)));
}

__kernel void r_115_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 val0 = read_imagef(data2_36864, smp, (int2)(alu15,idx0));
    float4 val1 = read_imagef(data2_36864, smp, (int2)((alu15+1),idx0));
    float4 val2 = read_imagef(data2_36864, smp, (int2)((alu15+2),idx0));
    float4 val3 = read_imagef(data2_36864, smp, (int2)((alu15+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_384+(idx0<<2)))));
  int alu44 = (idx0+(idx1*288));
  int alu45 = (alu44+96);
  int alu46 = (alu44+192);
  int alu47 = ((alu44*15197)>>25);
  int alu48 = ((alu45*15197)>>25);
  int alu49 = ((alu46*15197)>>25);
  write_imagef(data0_132480, (int2)((alu44-(2208*alu47)),alu47), (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)));
  write_imagef(data0_132480, (int2)((alu45-(2208*alu48)),alu48), (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_132480, (int2)((alu46-(2208*alu49)),alu49), (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)));
}

__kernel void r_115_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 ridx1007 = 0; ridx1007 < 96; ridx1007++) {
    int alu12 = ((idx1*288)+ridx1007);
    int alu13 = (alu12+96);
    int alu14 = (alu12+192);
    int alu16 = ((alu13*15197)>>25);
    int alu17 = ((alu14*15197)>>25);
    int alu18 = ((alu12*15197)>>25);
    float4 val4 = read_imagef(data1_132480, smp, (int2)((alu13-(2208*alu16)),alu16));
    float4 val5 = read_imagef(data1_132480, smp, (int2)((alu14-(2208*alu17)),alu17));
    float4 val6 = read_imagef(data1_132480, smp, (int2)((alu12-(2208*alu18)),alu18));
  }
}

__kernel void r_115_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 val0 = read_imagef(data2_55296, smp, (int2)(alu15,idx0));
    float4 val1 = read_imagef(data2_55296, smp, (int2)((alu15+1),idx0));
    float4 val2 = read_imagef(data2_55296, smp, (int2)((alu15+2),idx0));
    float4 val3 = read_imagef(data2_55296, smp, (int2)((alu15+3),idx0));
  }
  float4 val7 = (*((__global float4*)((data3_576+(idx0<<2)))));
  int alu44 = (idx0+(idx1*432));
  int alu45 = (alu44+144);
  int alu46 = (alu44+288);
  int alu47 = ((alu44*40525)>>27);
  int alu48 = ((alu45*40525)>>27);
  int alu49 = ((alu46*40525)>>27);
  write_imagef(data0_198720, (int2)((alu44-(3312*alu47)),alu47), (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)));
  write_imagef(data0_198720, (int2)((alu45-(3312*alu48)),alu48), (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_198720, (int2)((alu46-(3312*alu49)),alu49), (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)));
}

__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)(1,idx0));
  float4 val2 = read_imagef(data2_5184, smp, (int2)(2,idx0));
  float4 val3 = read_imagef(data2_5184, smp, (int2)(3,idx0));
  float4 val4 = read_imagef(data2_5184, smp, (int2)(4,idx0));
  float4 val5 = read_imagef(data2_5184, smp, (int2)(5,idx0));
  float4 val6 = read_imagef(data2_5184, smp, (int2)(6,idx0));
  float4 val7 = read_imagef(data2_5184, smp, (int2)(7,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)(alu0,alu7));
  float4 val13 = read_imagef(data1_198720, smp, (int2)(alu4,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)(alu0,alu8));
  float4 val18 = read_imagef(data1_198720, smp, (int2)(alu1,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)(alu4,alu9));
  float4 val27 = read_imagef(data1_198720, smp, (int2)(alu2,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 = ((val18.x*val0.x)+(val17.x*val1.x)+(val19.x*val2.x)+(val10.x*val3.x)+(val12.x*val4.x)+(val11.x*val5.x)+(val25.x*val6.x)+(val24.x*val7.x)+(val27.x*val8.x)+val9.x);
  float alu12 = ((val19.x*val0.x)+(val20.x*val1.x)+(val21.x*val2.x)+(val11.x*val3.x)+(val14.x*val4.x)+(val13.x*val5.x)+(val27.x*val6.x)+(val28.x*val7.x)+(val26.x*val8.x)+val9.x);
  float alu13 = ((val21.x*val0.x)+(val22.x*val1.x)+(val23.x*val2.x)+(val13.x*val3.x)+(val15.x*val4.x)+(val16.x*val5.x)+(val26.x*val6.x)+(val29.x*val7.x)+(val30.x*val8.x)+val9.x);
  float alu14 = ((val18.y*val0.y)+(val17.y*val1.y)+(val19.y*val2.y)+(val10.y*val3.y)+(val12.y*val4.y)+(val11.y*val5.y)+(val25.y*val6.y)+(val24.y*val7.y)+(val27.y*val8.y)+val9.y);
  float alu15 = ((val19.y*val0.y)+(val20.y*val1.y)+(val21.y*val2.y)+(val11.y*val3.y)+(val14.y*val4.y)+(val13.y*val5.y)+(val27.y*val6.y)+(val28.y*val7.y)+(val26.y*val8.y)+val9.y);
  float alu16 = ((val21.y*val0.y)+(val22.y*val1.y)+(val23.y*val2.y)+(val13.y*val3.y)+(val15.y*val4.y)+(val16.y*val5.y)+(val26.y*val6.y)+(val29.y*val7.y)+(val30.y*val8.y)+val9.y);
  float alu17 = ((val18.z*val0.z)+(val17.z*val1.z)+(val19.z*val2.z)+(val10.z*val3.z)+(val12.z*val4.z)+(val11.z*val5.z)+(val25.z*val6.z)+(val24.z*val7.z)+(val27.z*val8.z)+val9.z);
  float alu18 = ((val19.z*val0.z)+(val20.z*val1.z)+(val21.z*val2.z)+(val11.z*val3.z)+(val14.z*val4.z)+(val13.z*val5.z)+(val27.z*val6.z)+(val28.z*val7.z)+(val26.z*val8.z)+val9.z);
  float alu19 = ((val21.z*val0.z)+(val22.z*val1.z)+(val23.z*val2.z)+(val13.z*val3.z)+(val15.z*val4.z)+(val16.z*val5.z)+(val26.z*val6.z)+(val29.z*val7.z)+(val30.z*val8.z)+val9.z);
  float alu20 = ((val18.w*val0.w)+(val17.w*val1.w)+(val19.w*val2.w)+(val10.w*val3.w)+(val12.w*val4.w)+(val11.w*val5.w)+(val25.w*val6.w)+(val24.w*val7.w)+(val27.w*val8.w)+val9.w);
  float alu21 = ((val19.w*val0.w)+(val20.w*val1.w)+(val21.w*val2.w)+(val11.w*val3.w)+(val14.w*val4.w)+(val13.w*val5.w)+(val27.w*val6.w)+(val28.w*val7.w)+(val26.w*val8.w)+val9.w);
  float alu22 = ((val21.w*val0.w)+(val22.w*val1.w)+(val23.w*val2.w)+(val13.w*val3.w)+(val15.w*val4.w)+(val16.w*val5.w)+(val26.w*val6.w)+(val29.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_32_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 */
  int idx1 = get_global_id(1); /* 32 */
  int alu0 = (idx1>>2);
  for (int ridx1007 = 0; ridx1007 < 144; ridx1007++) {
    int alu13 = ((idx1*432)+ridx1007);
    int alu14 = (alu13+144);
    int alu15 = (alu13+288);
    float4 val0 = read_imagef(data2_73728, smp, (int2)(alu16,idx0));
    float4 val1 = read_imagef(data2_73728, smp, (int2)((alu16+1),idx0));
    float4 val2 = read_imagef(data2_73728, smp, (int2)((alu16+2),idx0));
    float4 val3 = read_imagef(data2_73728, smp, (int2)((alu16+3),idx0));
    float4 val4 = read_imagef(data1_55296, smp, (int2)((alu14-(1728*((alu14*19419)>>25))),alu0));
    float4 val5 = read_imagef(data1_55296, smp, (int2)((alu15-(1728*((alu15*19419)>>25))),alu0));
    float4 val6 = read_imagef(data1_55296, smp, (int2)((alu13-(1728*((alu13*19419)>>25))),alu0));
  }
  float4 val7 = (*((__global float4*)((data3_128+(idx0<<2)))));
  int alu30 = (idx0+(idx1*96));
  int alu31 = (alu30+32);
  int alu32 = (alu30+64);
  write_imagef(data0_12288, (int2)((alu30-(384*((alu30*2731)>>20))),alu0), (float4)(((*(acc0+0))+val7.x),((*(acc0+3))+val7.y),((*(acc0+6))+val7.z),((*(acc0+9))+val7.w)));
  write_imagef(data0_12288, (int2)((alu31-(384*((alu31*2731)>>20))),alu0), (float4)(((*(acc0+1))+val7.x),((*(acc0+4))+val7.y),((*(acc0+7))+val7.z),((*(acc0+10))+val7.w)));
  write_imagef(data0_12288, (int2)((alu32-(384*((alu32*2731)>>20))),alu0), (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_32_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 ridx1007 = 0; ridx1007 < 32; ridx1007++) {
    int alu13 = ((idx1*96)+ridx1007);
    int alu14 = (alu13+32);
    int alu15 = (alu13+64);
    float4 val0 = read_imagef(data2_65536, smp, (int2)(alu16,idx0));
    float4 val1 = read_imagef(data2_65536, smp, (int2)((alu16+1),idx0));
    float4 val2 = read_imagef(data2_65536, smp, (int2)((alu16+2),idx0));
    float4 val3 = read_imagef(data2_65536, smp, (int2)((alu16+3),idx0));
    float4 val4 = read_imagef(data1_12288, smp, (int2)((alu14-(384*((alu14*2731)>>20))),alu0));
    float4 val5 = read_imagef(data1_12288, smp, (int2)((alu15-(384*((alu15*2731)>>20))),alu0));
    float4 val6 = read_imagef(data1_12288, smp, (int2)((alu13-(384*((alu13*2731)>>20))),alu0));
  }
  float4 val7 = (*((__global float4*)((data3_512+(idx0<<2)))));
  int alu42 = (idx0+(idx1*384));
  int alu43 = (alu42+128);
  int alu44 = (alu42+256);
  write_imagef(data0_49152, (int2)((alu42-(1536*((alu42*10923)>>24))),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_49152, (int2)((alu43-(1536*((alu43*10923)>>24))),alu0), (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)((alu44-(1536*((alu44*10923)>>24))),alu0), (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_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_32_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 ridx1007 = 0; ridx1007 < 128; ridx1007++) {
    int alu13 = ((idx1*384)+ridx1007);
    int alu14 = (alu13+128);
    int alu15 = (alu13+256);
    float4 val4 = read_imagef(data1_49152, smp, (int2)((alu14-(1536*((alu14*10923)>>24))),alu0));
    float4 val5 = read_imagef(data1_49152, smp, (int2)((alu15-(1536*((alu15*10923)>>24))),alu0));
    float4 val6 = read_imagef(data1_49152, smp, (int2)((alu13-(1536*((alu13*10923)>>24))),alu0));
  }
  int2 cast0 = (int2)((alu30-(384*((alu30*2731)>>20))),alu0);
  float4 val8 = read_imagef(data4_12288, smp, cast0);
  int2 cast1 = (int2)((alu31-(384*((alu31*2731)>>20))),alu0);
  float4 val9 = read_imagef(data4_12288, smp, cast1);
  int2 cast2 = (int2)((alu32-(384*((alu32*2731)>>20))),alu0);
  float4 val10 = read_imagef(data4_12288, smp, cast2);
  write_imagef(data0_12288, cast0, (float4)(((*(acc0+0))+val7.x+val8.x),((*(acc0+3))+val7.y+val8.y),((*(acc0+6))+val7.z+val8.z),((*(acc0+9))+val7.w+val8.w)));
  write_imagef(data0_12288, cast1, (float4)(((*(acc0+1))+val7.x+val9.x),((*(acc0+4))+val7.y+val9.y),((*(acc0+7))+val7.z+val9.z),((*(acc0+10))+val7.w+val9.w)));
  write_imagef(data0_12288, cast2, (float4)(((*(acc0+2))+val7.x+val10.x),((*(acc0+5))+val7.y+val10.y),((*(acc0+8))+val7.z+val10.z),((*(acc0+11))+val7.w+val10.w)));
}

__kernel void r_32_96_4_3_32_4(write_only image2d_t data0_36864, read_only image2d_t data1_12288, read_only image2d_t data2_49152, __global float* data3_384) {
    float4 val0 = read_imagef(data2_49152, smp, (int2)(alu16,idx0));
    float4 val1 = read_imagef(data2_49152, smp, (int2)((alu16+1),idx0));
    float4 val2 = read_imagef(data2_49152, smp, (int2)((alu16+2),idx0));
    float4 val3 = read_imagef(data2_49152, smp, (int2)((alu16+3),idx0));
  }
  int alu42 = (idx0+(idx1*288));
  int alu43 = (alu42+96);
  int alu44 = (alu42+192);
  write_imagef(data0_36864, (int2)((alu42-(1152*((alu42*3641)>>22))),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_36864, (int2)((alu43-(1152*((alu43*3641)>>22))),alu0), (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)((alu44-(1152*((alu44*3641)>>22))),alu0), (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_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_32_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 alu13 = ((idx1*288)+ridx1007);
    int alu14 = (alu13+96);
    int alu15 = (alu13+192);
    float4 val4 = read_imagef(data1_36864, smp, (int2)((alu14-(1152*((alu14*3641)>>22))),alu0));
    float4 val5 = read_imagef(data1_36864, smp, (int2)((alu15-(1152*((alu15*3641)>>22))),alu0));
    float4 val6 = read_imagef(data1_36864, smp, (int2)((alu13-(1152*((alu13*3641)>>22))),alu0));
  }
}

__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)(1,idx0));
  float4 val2 = read_imagef(data2_4608, smp, (int2)(2,idx0));
  float4 val3 = read_imagef(data2_4608, smp, (int2)(3,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, (int2)(alu2,alu1));
  float4 val10 = read_imagef(data1_49152, smp, (int2)(alu2,alu0));
  float4 val11 = read_imagef(data1_49152, smp, cast0);
  int alu3 = (alu2+-128);
  float4 val12 = read_imagef(data1_49152, smp, (int2)(alu3,alu0));
  float4 val13 = read_imagef(data1_49152, smp, (int2)(alu3,alu1));
  float4 val14 = read_imagef(data1_49152, smp, (int2)(alu3,idx2));
  int alu4 = (alu2+128);
  int2 cast1 = (int2)(alu4,idx2);
  float4 val15 = read_imagef(data1_49152, smp, (int2)(alu4,alu0));
  float4 val16 = read_imagef(data1_49152, smp, (int2)(alu4,alu1));
  float4 val17 = read_imagef(data1_49152, smp, cast1);
  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 = ((val12.x*val0.x)+(val10.x*val1.x)+(val15.x*val2.x)+(val14.x*val3.x)+(val11.x*val4.x)+(val17.x*val5.x)+(val13.x*val6.x)+(val9.x*val7.x)+(val16.x*val8.x)+val24.x);
  float alu8 = ((val10.x*val0.x)+(val15.x*val1.x)+(val18.x*val2.x)+(val11.x*val3.x)+(val17.x*val4.x)+(val19.x*val5.x)+(val9.x*val6.x)+(val16.x*val7.x)+(val20.x*val8.x)+val24.x);
  float alu9 = ((val15.x*val0.x)+(val18.x*val1.x)+(val22.x*val2.x)+(val17.x*val3.x)+(val19.x*val4.x)+(val21.x*val5.x)+(val16.x*val6.x)+(val20.x*val7.x)+(val23.x*val8.x)+val24.x);
  float alu10 = ((val12.y*val0.y)+(val10.y*val1.y)+(val15.y*val2.y)+(val14.y*val3.y)+(val11.y*val4.y)+(val17.y*val5.y)+(val13.y*val6.y)+(val9.y*val7.y)+(val16.y*val8.y)+val24.y);
  float alu11 = ((val10.y*val0.y)+(val15.y*val1.y)+(val18.y*val2.y)+(val11.y*val3.y)+(val17.y*val4.y)+(val19.y*val5.y)+(val9.y*val6.y)+(val16.y*val7.y)+(val20.y*val8.y)+val24.y);
  float alu12 = ((val15.y*val0.y)+(val18.y*val1.y)+(val22.y*val2.y)+(val17.y*val3.y)+(val19.y*val4.y)+(val21.y*val5.y)+(val16.y*val6.y)+(val20.y*val7.y)+(val23.y*val8.y)+val24.y);
  float alu13 = ((val12.z*val0.z)+(val10.z*val1.z)+(val15.z*val2.z)+(val14.z*val3.z)+(val11.z*val4.z)+(val17.z*val5.z)+(val13.z*val6.z)+(val9.z*val7.z)+(val16.z*val8.z)+val24.z);
  float alu14 = ((val10.z*val0.z)+(val15.z*val1.z)+(val18.z*val2.z)+(val11.z*val3.z)+(val17.z*val4.z)+(val19.z*val5.z)+(val9.z*val6.z)+(val16.z*val7.z)+(val20.z*val8.z)+val24.z);
  float alu15 = ((val15.z*val0.z)+(val18.z*val1.z)+(val22.z*val2.z)+(val17.z*val3.z)+(val19.z*val4.z)+(val21.z*val5.z)+(val16.z*val6.z)+(val20.z*val7.z)+(val23.z*val8.z)+val24.z);
  float alu16 = ((val12.w*val0.w)+(val10.w*val1.w)+(val15.w*val2.w)+(val14.w*val3.w)+(val11.w*val4.w)+(val17.w*val5.w)+(val13.w*val6.w)+(val9.w*val7.w)+(val16.w*val8.w)+val24.w);
  float alu17 = ((val10.w*val0.w)+(val15.w*val1.w)+(val18.w*val2.w)+(val11.w*val3.w)+(val17.w*val4.w)+(val19.w*val5.w)+(val9.w*val6.w)+(val16.w*val7.w)+(val20.w*val8.w)+val24.w);
  float alu18 = ((val15.w*val0.w)+(val18.w*val1.w)+(val22.w*val2.w)+(val17.w*val3.w)+(val19.w*val4.w)+(val21.w*val5.w)+(val16.w*val6.w)+(val20.w*val7.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_32_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 val0 = read_imagef(data2_122880, smp, (int2)(alu16,idx0));
    float4 val1 = read_imagef(data2_122880, smp, (int2)((alu16+1),idx0));
    float4 val2 = read_imagef(data2_122880, smp, (int2)((alu16+2),idx0));
    float4 val3 = read_imagef(data2_122880, smp, (int2)((alu16+3),idx0));
  }
  int alu30 = (idx0+(idx1*720));
  int alu31 = (alu30+240);
  int alu32 = (alu30+480);
  write_imagef(data0_92160, (int2)((alu30-(2880*((alu30*11651)>>25))),alu0), (float4)((*(acc0+0)),(*(acc0+3)),(*(acc0+6)),(*(acc0+9))));
  write_imagef(data0_92160, (int2)((alu31-(2880*((alu31*11651)>>25))),alu0), (float4)((*(acc0+1)),(*(acc0+4)),(*(acc0+7)),(*(acc0+10))));
  write_imagef(data0_92160, (int2)((alu32-(2880*((alu32*11651)>>25))),alu0), (float4)((*(acc0+2)),(*(acc0+5)),(*(acc0+8)),(*(acc0+11))));
}

__kernel void r_240_16_4_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 ridx1002 = 0; ridx1002 < 6; ridx1002++) {
    int alu8 = (gidx0+(lidx0*1440)+(ridx1002*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 ridx1103 = 0; ridx1103 < 16; ridx1103++) {
      float4 val2 = (*((__local float4*)((temp0+(ridx1103<<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_16_4_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 ridx1007 = 0; ridx1007 < 15; ridx1007++) {
    float4 val1 = read_imagef(data1_960, smp, (int2)(((lidx0*15)+ridx1007),0));
    int alu8 = ((lidx0*60)+(ridx1007<<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));
  }
    for (int ridx1109 = 0; ridx1109 < 16; ridx1109++) {
      float4 val6 = (*((__local float4*)((temp0+(ridx1109<<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_16_4_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 ridx1007 = 0; ridx1007 < 20; ridx1007++) {
    float4 val1 = read_imagef(data1_1280, smp, (int2)(((lidx0*20)+ridx1007),0));
    int alu8 = ((lidx0*80)+(ridx1007<<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_3, __global half* data4_3) {
  int idx0 = get_global_id(0); /* 129 */
  half2 cast1 = (half2)(((half)(0.0f)),((half)(0.0f)));
  bool alu0 = (127<idx0);
  half2 val1 = (alu0?*((__global half2*)((data3_3+0))):cast1);
  half val2 = (alu0?*(data3_3+2):((half)(0.0f)));
  half2 val3 = (alu0?*((__global half2*)((data4_3+0))):cast1);
  half val4 = (alu0?*(data4_3+2):((half)(0.0f)));
  float2 val5 = (alu0?*((__global float2*)((data2_3+0))):(float2)(0.0f,0.0f));
  float val6 = (alu0?*(data2_3+2):0.0f);
  bool alu1 = (idx0<128);
  half alu2 = (alu1?((half)(0.0f)):((half)(-1.0f)));
  half alu3 = (alu1?((half)(0.0f)):((half)(0.56494140625f)));
  write_imagef(data0_516, cast0, (float4)((val0.x+((float)(((((half)(val5.x))+(val1.x*alu2))*val3.x*alu3)))),(val0.y+((float)(((((half)(val5.y))+(val1.y*alu2))*val3.y*alu3)))),(val0.z+((float)(((((half)(val6))+(val2*alu2))*val4*alu3)))),val0.w));
}

__kernel void r_16_16_4_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)))));
    float4 val1 = read_imagef(data1_512, smp, (int2)(((lidx0<<3)+ridx1007),0));
    int alu8 = ((lidx0<<5)+(ridx1007<<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_16_4_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_16_4_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_4(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 ridx1007 = 0; ridx1007 < 129; ridx1007++) {
    float4 val0 = read_imagef(data1_516, smp, (int2)(ridx1007,0));
    int alu4 = (ridx1007<<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_16_4_4(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_4_6_8_4(write_only image2d_t data0_24, read_only image2d_t data1_32, read_only image2d_t data2_768, __global half* data3_24) {
  float acc0[24];
  *(acc0+12) = 0.0f;
  *(acc0+13) = 0.0f;
  *(acc0+14) = 0.0f;
  *(acc0+15) = 0.0f;
  *(acc0+16) = 0.0f;
  *(acc0+17) = 0.0f;
  *(acc0+18) = 0.0f;
  *(acc0+19) = 0.0f;
  *(acc0+20) = 0.0f;
  *(acc0+21) = 0.0f;
  *(acc0+22) = 0.0f;
  *(acc0+23) = 0.0f;
    float4 val0 = read_imagef(data1_32, smp, (int2)(ridx1007,0));
    int alu24 = (ridx1007<<2);
    float4 val1 = read_imagef(data2_768, smp, (int2)(alu24,0));
    float4 val2 = read_imagef(data2_768, smp, (int2)(alu24,1));
    float4 val3 = read_imagef(data2_768, smp, (int2)(alu24,2));
    float4 val4 = read_imagef(data2_768, smp, (int2)(alu24,3));
    float4 val5 = read_imagef(data2_768, smp, (int2)(alu24,4));
    float4 val6 = read_imagef(data2_768, smp, (int2)(alu24,5));
    int alu25 = (alu24+1);
    float4 val7 = read_imagef(data2_768, smp, (int2)(alu25,0));
    float4 val8 = read_imagef(data2_768, smp, (int2)(alu25,1));
    float4 val9 = read_imagef(data2_768, smp, (int2)(alu25,2));
    float4 val10 = read_imagef(data2_768, smp, (int2)(alu25,3));
    float4 val11 = read_imagef(data2_768, smp, (int2)(alu25,4));
    float4 val12 = read_imagef(data2_768, smp, (int2)(alu25,5));
    int alu26 = (alu24+2);
    float4 val13 = read_imagef(data2_768, smp, (int2)(alu26,0));
    float4 val14 = read_imagef(data2_768, smp, (int2)(alu26,1));
    float4 val15 = read_imagef(data2_768, smp, (int2)(alu26,2));
    float4 val16 = read_imagef(data2_768, smp, (int2)(alu26,3));
    float4 val17 = read_imagef(data2_768, smp, (int2)(alu26,4));
    float4 val18 = read_imagef(data2_768, smp, (int2)(alu26,5));
    int alu27 = (alu24+3);
    float4 val19 = read_imagef(data2_768, smp, (int2)(alu27,0));
    float4 val20 = read_imagef(data2_768, smp, (int2)(alu27,1));
    float4 val21 = read_imagef(data2_768, smp, (int2)(alu27,2));
    float4 val22 = read_imagef(data2_768, smp, (int2)(alu27,3));
    float4 val23 = read_imagef(data2_768, smp, (int2)(alu27,4));
    float4 val24 = read_imagef(data2_768, smp, (int2)(alu27,5));
    *(acc0+6) = ((*(acc0+6))+(val0.x*val7.x)+(val0.y*val7.y)+(val0.z*val7.z)+(val0.w*val7.w));
    *(acc0+7) = ((*(acc0+7))+(val0.x*val8.x)+(val0.y*val8.y)+(val0.z*val8.z)+(val0.w*val8.w));
    *(acc0+8) = ((*(acc0+8))+(val0.x*val9.x)+(val0.y*val9.y)+(val0.z*val9.z)+(val0.w*val9.w));
    *(acc0+9) = ((*(acc0+9))+(val0.x*val10.x)+(val0.y*val10.y)+(val0.z*val10.z)+(val0.w*val10.w));
    *(acc0+10) = ((*(acc0+10))+(val0.x*val11.x)+(val0.y*val11.y)+(val0.z*val11.z)+(val0.w*val11.w));
    *(acc0+11) = ((*(acc0+11))+(val0.x*val12.x)+(val0.y*val12.y)+(val0.z*val12.z)+(val0.w*val12.w));
    *(acc0+12) = ((*(acc0+12))+(val0.x*val13.x)+(val0.y*val13.y)+(val0.z*val13.z)+(val0.w*val13.w));
    *(acc0+13) = ((*(acc0+13))+(val0.x*val14.x)+(val0.y*val14.y)+(val0.z*val14.z)+(val0.w*val14.w));
    *(acc0+14) = ((*(acc0+14))+(val0.x*val15.x)+(val0.y*val15.y)+(val0.z*val15.z)+(val0.w*val15.w));
    *(acc0+15) = ((*(acc0+15))+(val0.x*val16.x)+(val0.y*val16.y)+(val0.z*val16.z)+(val0.w*val16.w));
    *(acc0+16) = ((*(acc0+16))+(val0.x*val17.x)+(val0.y*val17.y)+(val0.z*val17.z)+(val0.w*val17.w));
    *(acc0+17) = ((*(acc0+17))+(val0.x*val18.x)+(val0.y*val18.y)+(val0.z*val18.z)+(val0.w*val18.w));
    *(acc0+18) = ((*(acc0+18))+(val0.x*val19.x)+(val0.y*val19.y)+(val0.z*val19.z)+(val0.w*val19.w));
    *(acc0+19) = ((*(acc0+19))+(val0.x*val20.x)+(val0.y*val20.y)+(val0.z*val20.z)+(val0.w*val20.w));
    *(acc0+20) = ((*(acc0+20))+(val0.x*val21.x)+(val0.y*val21.y)+(val0.z*val21.z)+(val0.w*val21.w));
    *(acc0+21) = ((*(acc0+21))+(val0.x*val22.x)+(val0.y*val22.y)+(val0.z*val22.z)+(val0.w*val22.w));
    *(acc0+22) = ((*(acc0+22))+(val0.x*val23.x)+(val0.y*val23.y)+(val0.z*val23.z)+(val0.w*val23.w));
    *(acc0+23) = ((*(acc0+23))+(val0.x*val24.x)+(val0.y*val24.y)+(val0.z*val24.z)+(val0.w*val24.w));
    *(acc0+4) = ((*(acc0+4))+(val0.x*val5.x)+(val0.y*val5.y)+(val0.z*val5.z)+(val0.w*val5.w));
    *(acc0+5) = ((*(acc0+5))+(val0.x*val6.x)+(val0.y*val6.y)+(val0.z*val6.z)+(val0.w*val6.w));
  }
  half4 val25 = (*((__global half4*)((data3_24+0))));
  half4 val26 = (*((__global half4*)((data3_24+4))));
  half4 val27 = (*((__global half4*)((data3_24+8))));
  half4 val28 = (*((__global half4*)((data3_24+12))));
  half4 val29 = (*((__global half4*)((data3_24+16))));
  half4 val30 = (*((__global half4*)((data3_24+20))));
  float alu53 = ((*(acc0+0))+((float)(val25.x)));
  float alu54 = ((*(acc0+1))+((float)(val26.x)));
  float alu55 = ((*(acc0+2))+((float)(val27.x)));
  float alu56 = ((*(acc0+3))+((float)(val28.x)));
  float alu57 = ((*(acc0+4))+((float)(val29.x)));
  float alu58 = ((*(acc0+5))+((float)(val30.x)));
  float alu59 = ((*(acc0+6))+((float)(val25.y)));
  float alu60 = ((*(acc0+7))+((float)(val26.y)));
  float alu61 = ((*(acc0+8))+((float)(val27.y)));
  float alu62 = ((*(acc0+9))+((float)(val28.y)));
  float alu63 = ((*(acc0+10))+((float)(val29.y)));
  float alu64 = ((*(acc0+11))+((float)(val30.y)));
  float alu65 = ((*(acc0+12))+((float)(val25.z)));
  float alu66 = ((*(acc0+13))+((float)(val26.z)));
  float alu67 = ((*(acc0+14))+((float)(val27.z)));
  float alu68 = ((*(acc0+15))+((float)(val28.z)));
  float alu69 = ((*(acc0+16))+((float)(val29.z)));
  float alu70 = ((*(acc0+17))+((float)(val30.z)));
  float alu71 = ((*(acc0+18))+((float)(val25.w)));
  float alu72 = ((*(acc0+19))+((float)(val26.w)));
  float alu73 = ((*(acc0+20))+((float)(val27.w)));
  float alu74 = ((*(acc0+21))+((float)(val28.w)));
  float alu75 = ((*(acc0+22))+((float)(val29.w)));
  float alu76 = ((*(acc0+23))+((float)(val30.w)));
  float alu77 = ((0.0f<alu53)?alu53:0.0f);
  float alu78 = ((0.0f<alu54)?alu54:0.0f);
  float alu79 = ((0.0f<alu55)?alu55:0.0f);
  float alu80 = ((0.0f<alu56)?alu56:0.0f);
  float alu81 = ((0.0f<alu57)?alu57:0.0f);
  float alu82 = ((0.0f<alu58)?alu58:0.0f);
  float alu83 = ((0.0f<alu59)?alu59:0.0f);
  float alu84 = ((0.0f<alu60)?alu60:0.0f);
  float alu85 = ((0.0f<alu61)?alu61:0.0f);
  float alu86 = ((0.0f<alu62)?alu62:0.0f);
  float alu87 = ((0.0f<alu63)?alu63:0.0f);
  float alu88 = ((0.0f<alu64)?alu64:0.0f);
  float alu89 = ((0.0f<alu65)?alu65:0.0f);
  float alu90 = ((0.0f<alu66)?alu66:0.0f);
  float alu91 = ((0.0f<alu67)?alu67:0.0f);
  float alu92 = ((0.0f<alu68)?alu68:0.0f);
  float alu93 = ((0.0f<alu69)?alu69:0.0f);
  float alu94 = ((0.0f<alu70)?alu70:0.0f);
  float alu95 = ((0.0f<alu71)?alu71:0.0f);
  write_imagef(data0_24, (int2)(0,0), (float4)(alu77,alu83,alu89,alu95));
  float alu97 = ((0.0f<alu72)?alu72:0.0f);
  write_imagef(data0_24, (int2)(1,0), (float4)(alu78,alu84,alu90,alu97));
  float alu99 = ((0.0f<alu73)?alu73:0.0f);
  write_imagef(data0_24, (int2)(2,0), (float4)(alu79,alu85,alu91,alu99));
  float alu101 = ((0.0f<alu74)?alu74:0.0f);
  write_imagef(data0_24, (int2)(3,0), (float4)(alu80,alu86,alu92,alu101));
  float alu103 = ((0.0f<alu75)?alu75:0.0f);
  write_imagef(data0_24, (int2)(4,0), (float4)(alu81,alu87,alu93,alu103));
  float alu105 = ((0.0f<alu76)?alu76:0.0f);
  write_imagef(data0_24, (int2)(5,0), (float4)(alu82,alu88,alu94,alu105));
}

__kernel void r_8_4_12_4(write_only image2d_t data0_32, read_only image2d_t data1_48, read_only image2d_t data2_1536, __global half* data3_32) {
  for (int ridx1007 = 0; ridx1007 < 12; ridx1007++) {
    float4 val0 = read_imagef(data1_48, smp, (int2)(ridx1007,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_4(write_only image2d_t data0_16, read_only image2d_t data1_24, read_only image2d_t data2_384, __global half* data3_16) {
  float acc0[16];
  for (int ridx1007 = 0; ridx1007 < 6; ridx1007++) {
    float4 val0 = read_imagef(data1_24, smp, (int2)(ridx1007,0));
    float4 val1 = read_imagef(data2_384, smp, (int2)(alu16,0));
    float4 val2 = read_imagef(data2_384, smp, (int2)(alu16,1));
    float4 val3 = read_imagef(data2_384, smp, (int2)(alu16,2));
    float4 val4 = read_imagef(data2_384, smp, (int2)(alu16,3));
    int alu17 = (alu16+1);
    float4 val5 = read_imagef(data2_384, smp, (int2)(alu17,0));
    float4 val6 = read_imagef(data2_384, smp, (int2)(alu17,1));
    float4 val7 = read_imagef(data2_384, smp, (int2)(alu17,2));
    float4 val8 = read_imagef(data2_384, smp, (int2)(alu17,3));
    int alu18 = (alu16+2);
    float4 val9 = read_imagef(data2_384, smp, (int2)(alu18,0));
    float4 val10 = read_imagef(data2_384, smp, (int2)(alu18,1));
    float4 val11 = read_imagef(data2_384, smp, (int2)(alu18,2));
    float4 val12 = read_imagef(data2_384, smp, (int2)(alu18,3));
    int alu19 = (alu16+3);
    float4 val13 = read_imagef(data2_384, smp, (int2)(alu19,0));
    float4 val14 = read_imagef(data2_384, smp, (int2)(alu19,1));
    float4 val15 = read_imagef(data2_384, smp, (int2)(alu19,2));
    float4 val16 = read_imagef(data2_384, smp, (int2)(alu19,3));
  }
  half4 val17 = (*((__global half4*)((data3_16+0))));
  half4 val18 = (*((__global half4*)((data3_16+4))));
  half4 val19 = (*((__global half4*)((data3_16+8))));
  half4 val20 = (*((__global half4*)((data3_16+12))));
  float alu37 = ((*(acc0+0))+((float)(val17.x)));
  float alu38 = ((*(acc0+1))+((float)(val18.x)));
  float alu39 = ((*(acc0+2))+((float)(val19.x)));
  float alu40 = ((*(acc0+3))+((float)(val20.x)));
  float alu41 = ((*(acc0+4))+((float)(val17.y)));
  float alu42 = ((*(acc0+5))+((float)(val18.y)));
  float alu43 = ((*(acc0+6))+((float)(val19.y)));
  float alu44 = ((*(acc0+7))+((float)(val20.y)));
  float alu45 = ((*(acc0+8))+((float)(val17.z)));
  float alu46 = ((*(acc0+9))+((float)(val18.z)));
  float alu47 = ((*(acc0+10))+((float)(val19.z)));
  float alu48 = ((*(acc0+11))+((float)(val20.z)));
  float alu49 = ((*(acc0+12))+((float)(val17.w)));
  float alu50 = ((*(acc0+13))+((float)(val18.w)));
  float alu51 = ((*(acc0+14))+((float)(val19.w)));
  float alu52 = ((*(acc0+15))+((float)(val20.w)));
  float alu53 = ((0.0f<alu37)?alu37:0.0f);
  float alu54 = ((0.0f<alu38)?alu38:0.0f);
  float alu55 = ((0.0f<alu39)?alu39:0.0f);
  float alu56 = ((0.0f<alu40)?alu40:0.0f);
  float alu57 = ((0.0f<alu41)?alu41:0.0f);
  float alu58 = ((0.0f<alu42)?alu42:0.0f);
  float alu59 = ((0.0f<alu43)?alu43:0.0f);
  float alu60 = ((0.0f<alu44)?alu44:0.0f);
  float alu61 = ((0.0f<alu45)?alu45:0.0f);
  float alu62 = ((0.0f<alu46)?alu46:0.0f);
  float alu63 = ((0.0f<alu47)?alu47:0.0f);
  float alu64 = ((0.0f<alu48)?alu48:0.0f);
  float alu65 = ((0.0f<alu49)?alu49:0.0f);
  write_imagef(data0_16, (int2)(0,0), (float4)(alu53,alu57,alu61,alu65));
  float alu67 = ((0.0f<alu50)?alu50:0.0f);
  write_imagef(data0_16, (int2)(1,0), (float4)(alu54,alu58,alu62,alu67));
  float alu69 = ((0.0f<alu51)?alu51:0.0f);
  write_imagef(data0_16, (int2)(2,0), (float4)(alu55,alu59,alu63,alu69));
  float alu71 = ((0.0f<alu52)?alu52:0.0f);
  write_imagef(data0_16, (int2)(3,0), (float4)(alu56,alu60,alu64,alu71));
}

__kernel void r_4_4_8_4(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)(alu16,0));
    float4 val2 = read_imagef(data2_512, smp, (int2)(alu16,1));
    float4 val3 = read_imagef(data2_512, smp, (int2)(alu16,2));
    float4 val4 = read_imagef(data2_512, smp, (int2)(alu16,3));
    float4 val5 = read_imagef(data2_512, smp, (int2)(alu17,0));
    float4 val6 = read_imagef(data2_512, smp, (int2)(alu17,1));
    float4 val7 = read_imagef(data2_512, smp, (int2)(alu17,2));
    float4 val8 = read_imagef(data2_512, smp, (int2)(alu17,3));
    float4 val9 = read_imagef(data2_512, smp, (int2)(alu18,0));
    float4 val10 = read_imagef(data2_512, smp, (int2)(alu18,1));
    float4 val11 = read_imagef(data2_512, smp, (int2)(alu18,2));
    float4 val12 = read_imagef(data2_512, smp, (int2)(alu18,3));
    float4 val13 = read_imagef(data2_512, smp, (int2)(alu19,0));
    float4 val14 = read_imagef(data2_512, smp, (int2)(alu19,1));
    float4 val15 = read_imagef(data2_512, smp, (int2)(alu19,2));
    float4 val16 = read_imagef(data2_512, smp, (int2)(alu19,3));
  }
}

__kernel void r_2_4_8_4(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_4(write_only image2d_t data0_4, read_only image2d_t data1_32, read_only image2d_t data2_128) {
    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_4(write_only image2d_t data0_4, read_only image2d_t data1_16, read_only image2d_t data2_64) {
    float4 val0 = read_imagef(data1_16, smp, (int2)(ridx1007,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_4n1(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_4(write_only image2d_t data0_4, read_only image2d_t data1_24, read_only image2d_t data2_96, __global half* data3_4) {
    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_4n1(write_only image2d_t data0_4, read_only image2d_t data1_24, read_only image2d_t data2_96) {
  }
}

__kernel void E_595(__global float* data0_595, 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_512) {
  int idx0 = get_global_id(0); /* 595 */
  int2 cast0 = (int2)(0,0);
  float4 cast1 = (float4)(0.0f,0.0f,0.0f,0.0f);
  int alu0 = (idx0+-47);
  int alu1 = (idx0+-41);
  int alu2 = (idx0+-6);
  int alu3 = ((idx0+1)>>2);
  float4 val0 = read_imagef(data57_512, smp, (int2)((alu3+-21),0));
  bool alu4 = (idx0<6);
  half val1 = (alu4?*(data2_6+idx0):((half)(0.0f)));
  float4 val2 = (alu4?read_imagef(data1_8, smp, (int2)((idx0>>2),0)):cast1);
  bool alu5 = (idx0<12);
  float4 val3 = (alu5?read_imagef(data3_8, smp, (int2)((((idx0+2)>>2)+-2),0)):cast1);
  bool alu6 = (idx0<47);
  float4 val4 = (alu6?read_imagef(data28_8, smp, (int2)((((idx0+3)>>2)+-11),0)):cast1);
  bool alu7 = (idx0<53);
  float4 val5 = (alu7?read_imagef(data30_8, smp, (int2)((alu3+-12),0)):cast1);
  bool alu8 = (idx0==12);
  half val6 = (alu8?*(data6_1+0):((half)(0.0f)));
  float4 val7 = (alu8?read_imagef(data5_4, smp, cast0):cast1);
  bool alu9 = (idx0==21);
  half val8 = (alu9?*(data10_1+0):((half)(0.0f)));
  float4 val9 = (alu9?read_imagef(data9_4, smp, cast0):cast1);
  bool alu10 = (idx0==30);
  half val10 = (alu10?*(data14_1+0):((half)(0.0f)));
  float4 val11 = (alu10?read_imagef(data13_4, smp, cast0):cast1);
  bool alu11 = (idx0==31);
  half val12 = (alu11?*(data16_1+0):((half)(0.0f)));
  float4 val13 = (alu11?read_imagef(data15_4, smp, cast0):cast1);
  bool alu12 = (idx0==32);
  half val14 = (alu12?*(data18_1+0):((half)(0.0f)));
  float4 val15 = (alu12?read_imagef(data17_4, smp, cast0):cast1);
  bool alu13 = (idx0==33);
  half val16 = (alu13?*(data20_1+0):((half)(0.0f)));
  float4 val17 = (alu13?read_imagef(data19_4, smp, cast0):cast1);
  bool alu14 = (idx0==34);
  half val18 = (alu14?*(data22_1+0):((half)(0.0f)));
  float4 val19 = (alu14?read_imagef(data21_4, smp, cast0):cast1);
  bool alu15 = (idx0==39);
  half val20 = (alu15?*(data25_1+0):((half)(0.0f)));
  float4 val21 = (alu15?read_imagef(data24_4, smp, cast0):cast1);
  bool alu16 = (idx0==40);
  half val22 = (alu16?*(data27_1+0):((half)(0.0f)));
  float4 val23 = (alu16?read_imagef(data26_4, smp, cast0):cast1);
  bool alu17 = (idx0==53);
  half val24 = (alu17?*(data33_1+0):((half)(0.0f)));
  float4 val25 = (alu17?read_imagef(data32_4, smp, cast0):cast1);
  bool alu18 = (idx0==62);
  half val26 = (alu18?*(data37_1+0):((half)(0.0f)));
  float4 val27 = (alu18?read_imagef(data36_4, smp, cast0):cast1);
  bool alu19 = (idx0==71);
  half val28 = (alu19?*(data41_1+0):((half)(0.0f)));
  float4 val29 = (alu19?read_imagef(data40_4, smp, cast0):cast1);
  bool alu20 = (idx0==72);
  half val30 = (alu20?*(data43_1+0):((half)(0.0f)));
  float4 val31 = (alu20?read_imagef(data42_4, smp, cast0):cast1);
  bool alu21 = (idx0==73);
  half val32 = (alu21?*(data45_1+0):((half)(0.0f)));
  float4 val33 = (alu21?read_imagef(data44_4, smp, cast0):cast1);
  bool alu22 = (idx0==74);
  half val34 = (alu22?*(data47_1+0):((half)(0.0f)));
  float4 val35 = (alu22?read_imagef(data46_4, smp, cast0):cast1);
  bool alu23 = (idx0==75);
  half val36 = (alu23?*(data49_1+0):((half)(0.0f)));
  float4 val37 = (alu23?read_imagef(data48_4, smp, cast0):cast1);
  bool alu24 = (idx0==80);
  half val38 = (alu24?*(data52_1+0):((half)(0.0f)));
  float4 val39 = (alu24?read_imagef(data51_4, smp, cast0):cast1);
  bool alu25 = (idx0==81);
  half val40 = (alu25?*(data54_1+0):((half)(0.0f)));
  float4 val41 = (alu25?read_imagef(data53_4, smp, cast0):cast1);
  bool alu26 = (idx0==82);
  half val42 = (alu26?*(data56_1+0):((half)(0.0f)));
  float4 val43 = (alu26?read_imagef(data55_4, smp, cast0):cast1);
  half val44 = (((5<idx0)&alu5)?*(data4_6+alu2):((half)(0.0f)));
  float4 val45 = (((12<idx0)&(idx0<17))?read_imagef(data7_4, smp, cast0):cast1);
  float4 val46 = (((16<idx0)&(idx0<21))?read_imagef(data8_4, smp, cast0):cast1);
  float4 val47 = (((21<idx0)&(idx0<26))?read_imagef(data11_4, smp, cast0):cast1);
  float4 val48 = (((25<idx0)&(idx0<30))?read_imagef(data12_4, smp, cast0):cast1);
  float4 val49 = (((34<idx0)&(idx0<39))?read_imagef(data23_4, smp, cast0):cast1);
  half val50 = (((40<idx0)&alu6)?*(data29_6+alu1):((half)(0.0f)));
  half val51 = (((46<idx0)&alu7)?*(data31_6+alu0):((half)(0.0f)));
  float4 val52 = (((53<idx0)&(idx0<58))?read_imagef(data34_4, smp, cast0):cast1);
  float4 val53 = (((57<idx0)&(idx0<62))?read_imagef(data35_4, smp, cast0):cast1);
  float4 val54 = (((62<idx0)&(idx0<67))?read_imagef(data38_4, smp, cast0):cast1);
  float4 val55 = (((66<idx0)&(idx0<71))?read_imagef(data39_4, smp, cast0):cast1);
  float4 val56 = (((75<idx0)&(idx0<80))?read_imagef(data50_4, smp, cast0):cast1);
  int alu27 = (idx0&3);
  int alu28 = ((idx0+-83)&3);
  int alu29 = ((idx0+-76)&3);
  int alu30 = ((idx0+-67)&3);
  int alu31 = ((idx0+-63)&3);
  int alu32 = ((idx0+-58)&3);
  int alu33 = ((idx0+-54)&3);
  int alu34 = (alu0&3);
  int alu35 = (alu1&3);
  int alu36 = ((idx0+-35)&3);
  int alu37 = ((idx0+-26)&3);
  int alu38 = ((idx0+-22)&3);
  int alu39 = ((idx0+-17)&3);
  int alu40 = ((idx0+-13)&3);
  int alu41 = (alu2&3);
  float alu42 = (((bool)(alu27))?((float)(NAN)):val2.x);
  float alu43 = (((bool)(alu28))?((float)(NAN)):val0.x);
  float alu44 = (((bool)(alu29))?((float)(NAN)):val56.x);
  float alu45 = (((bool)(alu30))?((float)(NAN)):val55.x);
  float alu46 = (((bool)(alu31))?((float)(NAN)):val54.x);
  float alu47 = (((bool)(alu32))?((float)(NAN)):val53.x);
  float alu48 = (((bool)(alu33))?((float)(NAN)):val52.x);
  float alu49 = (((bool)(alu34))?((float)(NAN)):val5.x);
  float alu50 = (((bool)(alu35))?((float)(NAN)):val4.x);
  float alu51 = (((bool)(alu36))?((float)(NAN)):val49.x);
  float alu52 = (((bool)(alu37))?((float)(NAN)):val48.x);
  float alu53 = (((bool)(alu38))?((float)(NAN)):val47.x);
  float alu54 = (((bool)(alu39))?((float)(NAN)):val46.x);
  float alu55 = (((bool)(alu40))?((float)(NAN)):val45.x);
  float alu56 = (((bool)(alu41))?((float)(NAN)):val3.x);
  float alu57 = ((alu27!=1)?alu42:val2.y);
  float alu58 = ((alu27!=2)?alu57:val2.z);
  float alu59 = ((alu27!=3)?alu58:val2.w);
  float alu60 = ((alu28!=1)?alu43:val0.y);
  float alu61 = ((alu28!=2)?alu60:val0.z);
  float alu62 = ((alu28!=3)?alu61:val0.w);
  float alu63 = ((alu29!=1)?alu44:val56.y);
  float alu64 = ((alu29!=2)?alu63:val56.z);
  float alu65 = ((alu29!=3)?alu64:val56.w);
  float alu66 = ((alu30!=1)?alu45:val55.y);
  float alu67 = ((alu30!=2)?alu66:val55.z);
  float alu68 = ((alu30!=3)?alu67:val55.w);
  float alu69 = ((alu31!=1)?alu46:val54.y);
  float alu70 = ((alu31!=2)?alu69:val54.z);
  float alu71 = ((alu31!=3)?alu70:val54.w);
  float alu72 = ((alu32!=1)?alu47:val53.y);
  float alu73 = ((alu32!=2)?alu72:val53.z);
  float alu74 = ((alu32!=3)?alu73:val53.w);
  float alu75 = ((alu33!=1)?alu48:val52.y);
  float alu76 = ((alu33!=2)?alu75:val52.z);
  float alu77 = ((alu33!=3)?alu76:val52.w);
  float alu78 = ((alu34!=1)?alu49:val5.y);
  float alu79 = ((alu34!=2)?alu78:val5.z);
  float alu80 = ((alu34!=3)?alu79:val5.w);
  float alu81 = ((alu35!=1)?alu50:val4.y);
  float alu82 = ((alu35!=2)?alu81:val4.z);
  float alu83 = ((alu35!=3)?alu82:val4.w);
  float alu84 = ((alu36!=1)?alu51:val49.y);
  float alu85 = ((alu36!=2)?alu84:val49.z);
  float alu86 = ((alu36!=3)?alu85:val49.w);
  float alu87 = ((alu37!=1)?alu52:val48.y);
  float alu88 = ((alu37!=2)?alu87:val48.z);
  float alu89 = ((alu37!=3)?alu88:val48.w);
  float alu90 = ((alu38!=1)?alu53:val47.y);
  float alu91 = ((alu38!=2)?alu90:val47.z);
  float alu92 = ((alu38!=3)?alu91:val47.w);
  float alu93 = ((alu39!=1)?alu54:val46.y);
  float alu94 = ((alu39!=2)?alu93:val46.z);
  float alu95 = ((alu39!=3)?alu94:val46.w);
  float alu96 = ((alu40!=1)?alu55:val45.y);
  float alu97 = ((alu40!=2)?alu96:val45.z);
  float alu98 = ((alu40!=3)?alu97:val45.w);
  float alu99 = ((alu41!=1)?alu56:val3.y);
  float alu100 = ((alu41!=2)?alu99:val3.z);
  float alu101 = ((alu41!=3)?alu100:val3.w);
  *(data0_595+idx0) = (alu59+((float)(val1))+alu101+((float)(val44))+val7.x+((float)(val6))+alu98+alu95+val9.x+((float)(val8))+alu92+alu89+val11.x+((float)(val10))+val13.x+((float)(val12))+val15.x+((float)(val14))+val17.x+((float)(val16))+val19.x+((float)(val18))+alu86+val21.x+((float)(val20))+val23.x+((float)(val22))+alu83+((float)(val50))+alu80+((float)(val51))+val25.x+((float)(val24))+alu77+alu74+val27.x+((float)(val26))+alu71+alu68+val29.x+((float)(val28))+val31.x+((float)(val30))+val33.x+((float)(val32))+val35.x+((float)(val34))+val37.x+((float)(val36))+alu65+val39.x+((float)(val38))+val41.x+((float)(val40))+val43.x+((float)(val42))+alu62);
}