#version 150

uniform sampler2D tex;

in vec2 vUV;
out vec4 fragColor;

vec3 sRGBtoRGB(vec3 rgb)
{
    bvec3 cutoff = greaterThanEqual(rgb, vec3(0.040449999272823333740234375));
    vec3 below = rgb / vec3(12.9200000762939453125);
    vec3 above = pow((rgb + vec3(0.054999999701976776123046875)) / vec3(1.05499994754791259765625), vec3(2.400000095367431640625));
    return vec3(cutoff.x ? above.x : below.x, cutoff.y ? above.y : below.y, cutoff.z ? above.z : below.z);
}

void main()
{
    vec4 texel = texture(tex, vUV);
    vec3 param = texel.xyz;
    vec3 _59 = sRGBtoRGB(param);
    texel.x = _59.x;
    texel.y = _59.y;
    texel.z = _59.z;
    fragColor = texel;
}

