/* [config]
 * expect_result: pass
 * glsl_version: 1.50
 * require_extensions: GL_ARB_gpu_shader_fp64
 * [end config]
 *
 * Check that the following test vectors are constant folded correctly:
 * transpose(dmat2(1.6lf, 1.53lf, 0.76lf, -1.0lf)) => dmat2(1.6lf, 0.76lf, 1.53lf, -1.0lf)
 * transpose(dmat2(-0.13lf, -1.4lf, -0.87lf, 1.4lf)) => dmat2(-0.13lf, -0.87lf, -1.4lf, 1.4lf)
 */
#version 150
#extension GL_ARB_gpu_shader_fp64 : require

void main()
{
  double[(distance(transpose(dmat2(1.6lf, 1.53lf, 0.76lf, -1.0lf))[0], dvec2(1.6lf, 0.76lf)) * distance(transpose(dmat2(1.6lf, 1.53lf, 0.76lf, -1.0lf))[0], dvec2(1.6lf, 0.76lf))) + (distance(transpose(dmat2(1.6lf, 1.53lf, 0.76lf, -1.0lf))[1], dvec2(1.53lf, -1.0lf)) * distance(transpose(dmat2(1.6lf, 1.53lf, 0.76lf, -1.0lf))[1], dvec2(1.53lf, -1.0lf))) <= 6.478500000000002e-10lf ? 1 : -1] array0;
  double[(distance(transpose(dmat2(-0.13lf, -1.4lf, -0.87lf, 1.4lf))[0], dvec2(-0.13lf, -0.87lf)) * distance(transpose(dmat2(-0.13lf, -1.4lf, -0.87lf, 1.4lf))[0], dvec2(-0.13lf, -0.87lf))) + (distance(transpose(dmat2(-0.13lf, -1.4lf, -0.87lf, 1.4lf))[1], dvec2(-1.4lf, 1.4lf)) * distance(transpose(dmat2(-0.13lf, -1.4lf, -0.87lf, 1.4lf))[1], dvec2(-1.4lf, 1.4lf))) <= 4.6938e-10lf ? 1 : -1] array1;
  gl_FragColor = vec4(array0.length() + array1.length());
}
