#version 310 es

shared mat2 m00;
shared mat2 m01;
shared mat2 m02;
shared mat2 m03;
shared mat2 m04;
shared mat2 m05;
shared mat2 m06;
shared mat2 m07;
shared mat2 m08;
shared mat2 m09;
shared mat2 m10;
shared mat2 m11;
shared mat2 m12;
shared mat2 m13;
shared mat2 m14;
shared mat2 m15;
shared mat2 m16;
shared mat2 m17;
shared mat2 m18;
shared mat2 m19;
shared mat2 m20;
shared mat2 m21;
shared mat2 m22;
shared mat2 m23;
shared mat2 m24;
shared mat2 m25;
shared mat2 m26;
shared mat2 m27;
shared mat2 m28;
shared mat2 m29;
shared mat2 m30;
shared mat2 m31;
shared mat2 m32;
shared mat2 m33;
shared mat2 m34;
shared mat2 m35;
shared mat2 m36;
shared mat2 m37;
shared mat2 m38;
shared mat2 m39;
shared mat2 m40;
shared mat2 m41;
shared mat2 m42;
shared mat2 m43;
shared mat2 m44;
shared mat2 m45;
shared mat2 m46;
shared mat2 m47;
shared mat2 m48;
shared mat2 m49;
shared mat2 m50;
shared mat2 m51;
shared mat2 m52;
shared mat2 m53;
shared mat2 m54;
shared mat2 m55;
shared mat2 m56;
shared mat2 m57;
shared mat2 m58;
shared mat2 m59;
shared mat2 m60;
shared mat2 m61;
shared mat2 m62;
shared mat2 m63;
shared mat2 m64;
shared mat2 m65;
shared mat2 m66;
shared mat2 m67;
shared mat2 m68;
shared mat2 m69;
shared mat2 m70;
shared mat2 m71;
shared mat2 m72;
shared mat2 m73;
shared mat2 m74;
shared mat2 m75;
shared mat2 m76;
shared mat2 m77;
shared mat2 m78;
shared mat2 m79;
shared mat2 m80;
shared mat2 m81;
shared mat2 m82;
shared mat2 m83;
shared mat2 m84;
shared mat2 m85;
shared mat2 m86;
shared mat2 m87;
shared mat2 m88;
shared mat2 m89;
shared mat2 m90;
shared mat2 m91;
shared mat2 m92;
shared mat2 m93;
shared mat2 m94;
shared mat2 m95;
shared mat2 m96;
shared mat2 m97;
shared mat2 m98;
shared mat2 m99;
void tint_zero_workgroup_memory(uint local_idx) {
  {
    m00 = mat2(vec2(0.0f), vec2(0.0f));
    m01 = mat2(vec2(0.0f), vec2(0.0f));
    m02 = mat2(vec2(0.0f), vec2(0.0f));
    m03 = mat2(vec2(0.0f), vec2(0.0f));
    m04 = mat2(vec2(0.0f), vec2(0.0f));
    m05 = mat2(vec2(0.0f), vec2(0.0f));
    m06 = mat2(vec2(0.0f), vec2(0.0f));
    m07 = mat2(vec2(0.0f), vec2(0.0f));
    m08 = mat2(vec2(0.0f), vec2(0.0f));
    m09 = mat2(vec2(0.0f), vec2(0.0f));
    m10 = mat2(vec2(0.0f), vec2(0.0f));
    m11 = mat2(vec2(0.0f), vec2(0.0f));
    m12 = mat2(vec2(0.0f), vec2(0.0f));
    m13 = mat2(vec2(0.0f), vec2(0.0f));
    m14 = mat2(vec2(0.0f), vec2(0.0f));
    m15 = mat2(vec2(0.0f), vec2(0.0f));
    m16 = mat2(vec2(0.0f), vec2(0.0f));
    m17 = mat2(vec2(0.0f), vec2(0.0f));
    m18 = mat2(vec2(0.0f), vec2(0.0f));
    m19 = mat2(vec2(0.0f), vec2(0.0f));
    m20 = mat2(vec2(0.0f), vec2(0.0f));
    m21 = mat2(vec2(0.0f), vec2(0.0f));
    m22 = mat2(vec2(0.0f), vec2(0.0f));
    m23 = mat2(vec2(0.0f), vec2(0.0f));
    m24 = mat2(vec2(0.0f), vec2(0.0f));
    m25 = mat2(vec2(0.0f), vec2(0.0f));
    m26 = mat2(vec2(0.0f), vec2(0.0f));
    m27 = mat2(vec2(0.0f), vec2(0.0f));
    m28 = mat2(vec2(0.0f), vec2(0.0f));
    m29 = mat2(vec2(0.0f), vec2(0.0f));
    m30 = mat2(vec2(0.0f), vec2(0.0f));
    m31 = mat2(vec2(0.0f), vec2(0.0f));
    m32 = mat2(vec2(0.0f), vec2(0.0f));
    m33 = mat2(vec2(0.0f), vec2(0.0f));
    m34 = mat2(vec2(0.0f), vec2(0.0f));
    m35 = mat2(vec2(0.0f), vec2(0.0f));
    m36 = mat2(vec2(0.0f), vec2(0.0f));
    m37 = mat2(vec2(0.0f), vec2(0.0f));
    m38 = mat2(vec2(0.0f), vec2(0.0f));
    m39 = mat2(vec2(0.0f), vec2(0.0f));
    m40 = mat2(vec2(0.0f), vec2(0.0f));
    m41 = mat2(vec2(0.0f), vec2(0.0f));
    m42 = mat2(vec2(0.0f), vec2(0.0f));
    m43 = mat2(vec2(0.0f), vec2(0.0f));
    m44 = mat2(vec2(0.0f), vec2(0.0f));
    m45 = mat2(vec2(0.0f), vec2(0.0f));
    m46 = mat2(vec2(0.0f), vec2(0.0f));
    m47 = mat2(vec2(0.0f), vec2(0.0f));
    m48 = mat2(vec2(0.0f), vec2(0.0f));
    m49 = mat2(vec2(0.0f), vec2(0.0f));
    m50 = mat2(vec2(0.0f), vec2(0.0f));
    m51 = mat2(vec2(0.0f), vec2(0.0f));
    m52 = mat2(vec2(0.0f), vec2(0.0f));
    m53 = mat2(vec2(0.0f), vec2(0.0f));
    m54 = mat2(vec2(0.0f), vec2(0.0f));
    m55 = mat2(vec2(0.0f), vec2(0.0f));
    m56 = mat2(vec2(0.0f), vec2(0.0f));
    m57 = mat2(vec2(0.0f), vec2(0.0f));
    m58 = mat2(vec2(0.0f), vec2(0.0f));
    m59 = mat2(vec2(0.0f), vec2(0.0f));
    m60 = mat2(vec2(0.0f), vec2(0.0f));
    m61 = mat2(vec2(0.0f), vec2(0.0f));
    m62 = mat2(vec2(0.0f), vec2(0.0f));
    m63 = mat2(vec2(0.0f), vec2(0.0f));
    m64 = mat2(vec2(0.0f), vec2(0.0f));
    m65 = mat2(vec2(0.0f), vec2(0.0f));
    m66 = mat2(vec2(0.0f), vec2(0.0f));
    m67 = mat2(vec2(0.0f), vec2(0.0f));
    m68 = mat2(vec2(0.0f), vec2(0.0f));
    m69 = mat2(vec2(0.0f), vec2(0.0f));
    m70 = mat2(vec2(0.0f), vec2(0.0f));
    m71 = mat2(vec2(0.0f), vec2(0.0f));
    m72 = mat2(vec2(0.0f), vec2(0.0f));
    m73 = mat2(vec2(0.0f), vec2(0.0f));
    m74 = mat2(vec2(0.0f), vec2(0.0f));
    m75 = mat2(vec2(0.0f), vec2(0.0f));
    m76 = mat2(vec2(0.0f), vec2(0.0f));
    m77 = mat2(vec2(0.0f), vec2(0.0f));
    m78 = mat2(vec2(0.0f), vec2(0.0f));
    m79 = mat2(vec2(0.0f), vec2(0.0f));
    m80 = mat2(vec2(0.0f), vec2(0.0f));
    m81 = mat2(vec2(0.0f), vec2(0.0f));
    m82 = mat2(vec2(0.0f), vec2(0.0f));
    m83 = mat2(vec2(0.0f), vec2(0.0f));
    m84 = mat2(vec2(0.0f), vec2(0.0f));
    m85 = mat2(vec2(0.0f), vec2(0.0f));
    m86 = mat2(vec2(0.0f), vec2(0.0f));
    m87 = mat2(vec2(0.0f), vec2(0.0f));
    m88 = mat2(vec2(0.0f), vec2(0.0f));
    m89 = mat2(vec2(0.0f), vec2(0.0f));
    m90 = mat2(vec2(0.0f), vec2(0.0f));
    m91 = mat2(vec2(0.0f), vec2(0.0f));
    m92 = mat2(vec2(0.0f), vec2(0.0f));
    m93 = mat2(vec2(0.0f), vec2(0.0f));
    m94 = mat2(vec2(0.0f), vec2(0.0f));
    m95 = mat2(vec2(0.0f), vec2(0.0f));
    m96 = mat2(vec2(0.0f), vec2(0.0f));
    m97 = mat2(vec2(0.0f), vec2(0.0f));
    m98 = mat2(vec2(0.0f), vec2(0.0f));
    m99 = mat2(vec2(0.0f), vec2(0.0f));
  }
  barrier();
}

void tint_symbol(uint idx) {
  tint_zero_workgroup_memory(idx);
  m00[0][0] = 1.0f;
  m01[0][0] = 1.0f;
  m02[0][0] = 1.0f;
  m03[0][0] = 1.0f;
  m04[0][0] = 1.0f;
  m05[0][0] = 1.0f;
  m06[0][0] = 1.0f;
  m07[0][0] = 1.0f;
  m08[0][0] = 1.0f;
  m09[0][0] = 1.0f;
  m10[0][0] = 1.0f;
  m11[0][0] = 1.0f;
  m12[0][0] = 1.0f;
  m13[0][0] = 1.0f;
  m14[0][0] = 1.0f;
  m15[0][0] = 1.0f;
  m16[0][0] = 1.0f;
  m17[0][0] = 1.0f;
  m18[0][0] = 1.0f;
  m19[0][0] = 1.0f;
  m20[0][0] = 1.0f;
  m21[0][0] = 1.0f;
  m22[0][0] = 1.0f;
  m23[0][0] = 1.0f;
  m24[0][0] = 1.0f;
  m25[0][0] = 1.0f;
  m26[0][0] = 1.0f;
  m27[0][0] = 1.0f;
  m28[0][0] = 1.0f;
  m29[0][0] = 1.0f;
  m30[0][0] = 1.0f;
  m31[0][0] = 1.0f;
  m32[0][0] = 1.0f;
  m33[0][0] = 1.0f;
  m34[0][0] = 1.0f;
  m35[0][0] = 1.0f;
  m36[0][0] = 1.0f;
  m37[0][0] = 1.0f;
  m38[0][0] = 1.0f;
  m39[0][0] = 1.0f;
  m40[0][0] = 1.0f;
  m41[0][0] = 1.0f;
  m42[0][0] = 1.0f;
  m43[0][0] = 1.0f;
  m44[0][0] = 1.0f;
  m45[0][0] = 1.0f;
  m46[0][0] = 1.0f;
  m47[0][0] = 1.0f;
  m48[0][0] = 1.0f;
  m49[0][0] = 1.0f;
  m50[0][0] = 1.0f;
  m51[0][0] = 1.0f;
  m52[0][0] = 1.0f;
  m53[0][0] = 1.0f;
  m54[0][0] = 1.0f;
  m55[0][0] = 1.0f;
  m56[0][0] = 1.0f;
  m57[0][0] = 1.0f;
  m58[0][0] = 1.0f;
  m59[0][0] = 1.0f;
  m60[0][0] = 1.0f;
  m61[0][0] = 1.0f;
  m62[0][0] = 1.0f;
  m63[0][0] = 1.0f;
  m64[0][0] = 1.0f;
  m65[0][0] = 1.0f;
  m66[0][0] = 1.0f;
  m67[0][0] = 1.0f;
  m68[0][0] = 1.0f;
  m69[0][0] = 1.0f;
  m70[0][0] = 1.0f;
  m71[0][0] = 1.0f;
  m72[0][0] = 1.0f;
  m73[0][0] = 1.0f;
  m74[0][0] = 1.0f;
  m75[0][0] = 1.0f;
  m76[0][0] = 1.0f;
  m77[0][0] = 1.0f;
  m78[0][0] = 1.0f;
  m79[0][0] = 1.0f;
  m80[0][0] = 1.0f;
  m81[0][0] = 1.0f;
  m82[0][0] = 1.0f;
  m83[0][0] = 1.0f;
  m84[0][0] = 1.0f;
  m85[0][0] = 1.0f;
  m86[0][0] = 1.0f;
  m87[0][0] = 1.0f;
  m88[0][0] = 1.0f;
  m89[0][0] = 1.0f;
  m90[0][0] = 1.0f;
  m91[0][0] = 1.0f;
  m92[0][0] = 1.0f;
  m93[0][0] = 1.0f;
  m94[0][0] = 1.0f;
  m95[0][0] = 1.0f;
  m96[0][0] = 1.0f;
  m97[0][0] = 1.0f;
  m98[0][0] = 1.0f;
  m99[0][0] = 1.0f;
}

layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
  tint_symbol(gl_LocalInvocationIndex);
  return;
}
