struct v2f_vertex_lit {
    vec2 uv;
    vec4 diff;
    vec4 spec;
};
struct v2f_img {
    vec4 pos;
    vec2 uv;
};
struct appdata_img {
    vec4 vertex;
    vec2 texcoord;
};
uniform vec4 _AdaptParams;
uniform sampler2D _CurTex;
uniform sampler2D _MainTex;
vec4 frag( in v2f_img i );
vec4 frag( in v2f_img i ) {
    vec2 valAdapted;
    vec2 valCur;
    vec2 delta;
    vec4 valNew;
    valAdapted = texture2D( _MainTex, i.uv).xy ;
    valCur = texture2D( _CurTex, i.uv).xy ;
    delta = ((valCur - valAdapted) * _AdaptParams.x );
    delta.x  = (sign( delta.x  ) * max( 0.00392157, abs( delta.x  )));
    delta.y  = (sign( delta.y  ) * max( 0.00392157, abs( delta.y  )));
    valNew.xy  = (valAdapted + delta);
    valNew.x  = max( valNew.x , _AdaptParams.z );
    valNew.y  = min( valNew.y , _AdaptParams.y );
    valNew.z  = ((valNew.x  - valNew.y ) + 0.0100000);
    valNew.w  = (valNew.y  / valNew.z );
    return valNew;
}
void main() {
    vec4 xl_retval;
    v2f_img xlt_i;
    xlt_i.pos = vec4(0.0);
    xlt_i.uv = vec2( gl_TexCoord[0]);
    xl_retval = frag( xlt_i);
    gl_FragData[0] = vec4( xl_retval);
}