/* [config]
 * expect_result: pass
 * glsl_version: 4.00
 * require_extensions: GL_ARB_gpu_shader_int64
 * [end config]
 *
 * Check that the following test vectors are constant folded correctly:
 * abs(-10l) => 10l
 * abs(-9l) => 9l
 * abs(-9l) => 9l
 * abs(-8l) => 8l
 * abs(-8l) => 8l
 * abs(-7l) => 7l
 * abs(-7l) => 7l
 * abs(-6l) => 6l
 * abs(-6l) => 6l
 * abs(-5l) => 5l
 * abs(-5l) => 5l
 * abs(-4l) => 4l
 * abs(-4l) => 4l
 * abs(-3l) => 3l
 * abs(-3l) => 3l
 * abs(-2l) => 2l
 * abs(-2l) => 2l
 * abs(-1l) => 1l
 * abs(-1l) => 1l
 * abs(-1l) => 1l
 * abs(0l) => 0l
 * abs(0l) => 0l
 * abs(0l) => 0l
 * abs(0l) => 0l
 * abs(1l) => 1l
 * abs(1l) => 1l
 * abs(2l) => 2l
 * abs(2l) => 2l
 * abs(3l) => 3l
 * abs(3l) => 3l
 * abs(4l) => 4l
 * abs(4l) => 4l
 * abs(5l) => 5l
 * abs(5l) => 5l
 * abs(6l) => 6l
 * abs(6l) => 6l
 * abs(6l) => 6l
 * abs(7l) => 7l
 * abs(7l) => 7l
 * abs(8l) => 8l
 * abs(8l) => 8l
 * abs(9l) => 9l
 * abs(9l) => 9l
 * abs(10l) => 10l
 * abs(10l) => 10l
 * abs(11l) => 11l
 * abs(11l) => 11l
 * abs(12l) => 12l
 * abs(12l) => 12l
 * abs(13l) => 13l
 * abs(13l) => 13l
 * abs(14l) => 14l
 * abs(14l) => 14l
 * abs(15l) => 15l
 */
#version 400
#extension GL_ARB_gpu_shader_int64 : require

void main()
{
  float[abs(-10l) == 10l ? 1 : -1] array0;
  float[abs(-9l) == 9l ? 1 : -1] array1;
  float[abs(-9l) == 9l ? 1 : -1] array2;
  float[abs(-8l) == 8l ? 1 : -1] array3;
  float[abs(-8l) == 8l ? 1 : -1] array4;
  float[abs(-7l) == 7l ? 1 : -1] array5;
  float[abs(-7l) == 7l ? 1 : -1] array6;
  float[abs(-6l) == 6l ? 1 : -1] array7;
  float[abs(-6l) == 6l ? 1 : -1] array8;
  float[abs(-5l) == 5l ? 1 : -1] array9;
  float[abs(-5l) == 5l ? 1 : -1] array10;
  float[abs(-4l) == 4l ? 1 : -1] array11;
  float[abs(-4l) == 4l ? 1 : -1] array12;
  float[abs(-3l) == 3l ? 1 : -1] array13;
  float[abs(-3l) == 3l ? 1 : -1] array14;
  float[abs(-2l) == 2l ? 1 : -1] array15;
  float[abs(-2l) == 2l ? 1 : -1] array16;
  float[abs(-1l) == 1l ? 1 : -1] array17;
  float[abs(-1l) == 1l ? 1 : -1] array18;
  float[abs(-1l) == 1l ? 1 : -1] array19;
  float[abs(0l) == 0l ? 1 : -1] array20;
  float[abs(0l) == 0l ? 1 : -1] array21;
  float[abs(0l) == 0l ? 1 : -1] array22;
  float[abs(0l) == 0l ? 1 : -1] array23;
  float[abs(1l) == 1l ? 1 : -1] array24;
  float[abs(1l) == 1l ? 1 : -1] array25;
  float[abs(2l) == 2l ? 1 : -1] array26;
  float[abs(2l) == 2l ? 1 : -1] array27;
  float[abs(3l) == 3l ? 1 : -1] array28;
  float[abs(3l) == 3l ? 1 : -1] array29;
  float[abs(4l) == 4l ? 1 : -1] array30;
  float[abs(4l) == 4l ? 1 : -1] array31;
  float[abs(5l) == 5l ? 1 : -1] array32;
  float[abs(5l) == 5l ? 1 : -1] array33;
  float[abs(6l) == 6l ? 1 : -1] array34;
  float[abs(6l) == 6l ? 1 : -1] array35;
  float[abs(6l) == 6l ? 1 : -1] array36;
  float[abs(7l) == 7l ? 1 : -1] array37;
  float[abs(7l) == 7l ? 1 : -1] array38;
  float[abs(8l) == 8l ? 1 : -1] array39;
  float[abs(8l) == 8l ? 1 : -1] array40;
  float[abs(9l) == 9l ? 1 : -1] array41;
  float[abs(9l) == 9l ? 1 : -1] array42;
  float[abs(10l) == 10l ? 1 : -1] array43;
  float[abs(10l) == 10l ? 1 : -1] array44;
  float[abs(11l) == 11l ? 1 : -1] array45;
  float[abs(11l) == 11l ? 1 : -1] array46;
  float[abs(12l) == 12l ? 1 : -1] array47;
  float[abs(12l) == 12l ? 1 : -1] array48;
  float[abs(13l) == 13l ? 1 : -1] array49;
  float[abs(13l) == 13l ? 1 : -1] array50;
  float[abs(14l) == 14l ? 1 : -1] array51;
  float[abs(14l) == 14l ? 1 : -1] array52;
  float[abs(15l) == 15l ? 1 : -1] array53;
  gl_Position = vec4(array0.length() + array1.length() + array2.length() + array3.length() + array4.length() + array5.length() + array6.length() + array7.length() + array8.length() + array9.length() + array10.length() + array11.length() + array12.length() + array13.length() + array14.length() + array15.length() + array16.length() + array17.length() + array18.length() + array19.length() + array20.length() + array21.length() + array22.length() + array23.length() + array24.length() + array25.length() + array26.length() + array27.length() + array28.length() + array29.length() + array30.length() + array31.length() + array32.length() + array33.length() + array34.length() + array35.length() + array36.length() + array37.length() + array38.length() + array39.length() + array40.length() + array41.length() + array42.length() + array43.length() + array44.length() + array45.length() + array46.length() + array47.length() + array48.length() + array49.length() + array50.length() + array51.length() + array52.length() + array53.length());
}
