+bvec2 lessThan(vec2 x, vec2 y);
+bvec3 lessThan(vec3 x, vec3 y);
+bvec4 lessThan(vec4 x, vec4 y);
+bvec2 lessThan(ivec2 x, ivec2 y);
+bvec3 lessThan(ivec3 x, ivec3 y);
+bvec4 lessThan(ivec4 x, ivec4 y);
+bvec2 lessThan(uvec2 x, uvec2 y);
+bvec3 lessThan(uvec3 x, uvec3 y);
+bvec4 lessThan(uvec4 x, uvec4 y);
+bvec2 lessThanEqual(vec2 x, vec2 y);
+bvec3 lessThanEqual(vec3 x, vec3 y);
+bvec4 lessThanEqual(vec4 x, vec4 y);
+bvec2 lessThanEqual(ivec2 x, ivec2 y);
+bvec3 lessThanEqual(ivec3 x, ivec3 y);
+bvec4 lessThanEqual(ivec4 x, ivec4 y);
+bvec2 lessThanEqual(uvec2 x, uvec2 y);
+bvec3 lessThanEqual(uvec3 x, uvec3 y);
+bvec4 lessThanEqual(uvec4 x, uvec4 y);
+bvec2 greaterThan(vec2 x, vec2 y);
+bvec3 greaterThan(vec3 x, vec3 y);
+bvec4 greaterThan(vec4 x, vec4 y);
+bvec2 greaterThan(ivec2 x, ivec2 y);
+bvec3 greaterThan(ivec3 x, ivec3 y);
+bvec4 greaterThan(ivec4 x, ivec4 y);
+bvec2 greaterThan(uvec2 x, uvec2 y);
+bvec3 greaterThan(uvec3 x, uvec3 y);
+bvec4 greaterThan(uvec4 x, uvec4 y);
+bvec2 greaterThanEqual(vec2 x, vec2 y);
+bvec3 greaterThanEqual(vec3 x, vec3 y);
+bvec4 greaterThanEqual(vec4 x, vec4 y);
+bvec2 greaterThanEqual(ivec2 x, ivec2 y);
+bvec3 greaterThanEqual(ivec3 x, ivec3 y);
+bvec4 greaterThanEqual(ivec4 x, ivec4 y);
+bvec2 greaterThanEqual(uvec2 x, uvec2 y);
+bvec3 greaterThanEqual(uvec3 x, uvec3 y);
+bvec4 greaterThanEqual(uvec4 x, uvec4 y);
+bvec2 equal(vec2 x, vec2 y);
+bvec3 equal(vec3 x, vec3 y);
+bvec4 equal(vec4 x, vec4 y);
+bvec2 equal(ivec2 x, ivec2 y);
+bvec3 equal(ivec3 x, ivec3 y);
+bvec4 equal(ivec4 x, ivec4 y);
+bvec2 equal(uvec2 x, uvec2 y);
+bvec3 equal(uvec3 x, uvec3 y);
+bvec4 equal(uvec4 x, uvec4 y);
+bvec2 notEqual(vec2 x, vec2 y);
+bvec3 notEqual(vec3 x, vec3 y);
+bvec4 notEqual(vec4 x, vec4 y);
+bvec2 notEqual(ivec2 x, ivec2 y);
+bvec3 notEqual(ivec3 x, ivec3 y);
+bvec4 notEqual(ivec4 x, ivec4 y);
+bvec2 notEqual(uvec2 x, uvec2 y);
+bvec3 notEqual(uvec3 x, uvec3 y);
+bvec4 notEqual(uvec4 x, uvec4 y);
+bool any(bvec2 x);
+bool any(bvec3 x);
+bool any(bvec4 x);
+bool all(bvec2 x);
+bool all(bvec3 x);
+bool all(bvec4 x);
+bool not(bvec2 x);
+bool not(bvec3 x);
+bool not(bvec4 x);
+int bitfieldExtract(int value, int offset, int bits);
+ivec2 bitfieldExtract(ivec2 value, int offset, int bits);
+ivec3 bitfieldExtract(ivec3 value, int offset, int bits);
+ivec4 bitfieldExtract(ivec4 value, int offset, int bits);
+uint bitfieldExtract(uint value, int offset, int bits);
+uvec2 bitfieldExtract(uvec2 value, int offset, int bits);
+uvec3 bitfieldExtract(uvec3 value, int offset, int bits);
+uvec4 bitfieldExtract(uvec4 value, int offset, int bits);
+int bitfieldInsert(int value, int insert, int offset, int bits);
+ivec2 bitfieldInsert(ivec2 value, ivec2 insert, int offset, int bits);
+ivec3 bitfieldInsert(ivec3 value, ivec3 insert, int offset, int bits);
+ivec4 bitfieldInsert(ivec4 value, ivec4 insert, int offset, int bits);
+uint bitfieldInsert(uint value, uint insert, int offset, int bits);
+uvec2 bitfieldInsert(uvec2 value, uvec2 insert, int offset, int bits);
+uvec3 bitfieldInsert(uvec3 value, uvec3 insert, int offset, int bits);
+uvec4 bitfieldInsert(uvec4 value, uvec4 insert, int offset, int bits);
+int bitfieldReverse(int value);
+ivec2 bitfieldReverse(ivec2 value);
+ivec3 bitfieldReverse(ivec3 value);
+ivec4 bitfieldReverse(ivec4 value);
+uint bitfieldReverse(uint value);
+uvec2 bitfieldReverse(uvec2 value);
+uvec3 bitfieldReverse(uvec3 value);
+uvec4 bitfieldReverse(uvec4 value);
+int bitCount(int value);
+ivec2 bitCount(ivec2 value);
+ivec3 bitCount(ivec3 value);
+ivec4 bitCount(ivec4 value);
+uint bitCount(uint value);
+uvec2 bitCount(uvec2 value);
+uvec3 bitCount(uvec3 value);
+uvec4 bitCount(uvec4 value);
+int findLSB(int value);
+ivec2 findLSB(ivec2 value);
+ivec3 findLSB(ivec3 value);
+ivec4 findLSB(ivec4 value);
+int findLSB(uint value);
+ivec2 findLSB(uvec2 value);
+ivec3 findLSB(uvec3 value);
+ivec4 findLSB(uvec4 value);
+int findMSB(int value);
+ivec2 findMSB(ivec2 value);
+ivec3 findMSB(ivec3 value);
+ivec4 findMSB(ivec4 value);
+int findMSB(uint value);
+ivec2 findMSB(uvec2 value);
+ivec3 findMSB(uvec3 value);
+ivec4 findMSB(uvec4 value);