//DBSZ aura 2D texture.
// ---- Created with geo-11 v0.6.198 on Tue Oct  8 19:33:14 2024
Texture2D<float4> t7 : register(t7);

Texture2D<float4> t6 : register(t6);

Texture2D<float4> t5 : register(t5);

Texture2D<float4> t4 : register(t4);

Texture2D<float4> t3 : register(t3);

Texture2D<uint4> t2 : register(t2);

Texture2D<float4> t1 : register(t1);

Texture2D<float4> t0 : register(t0);

SamplerState s5_s : register(s5);

SamplerState s4_s : register(s4);

SamplerState s3_s : register(s3);

SamplerState s2_s : register(s2);

SamplerState s1_s : register(s1);

SamplerState s0_s : register(s0);

cbuffer cb2 : register(b2)
{
  float4 cb2[28];
}

cbuffer cb1 : register(b1)
{
  float4 cb1[144];
}

cbuffer cb0 : register(b0)
{
  float4 cb0[39];
}




// 3Dmigoto declarations
#define cmp -
Texture1D<float4> IniParams : register(t120);
Texture2D<float4> StereoParams : register(t125);


void main(
  float4 v0 : SV_POSITION0,
  out float4 o0 : SV_Target0)
{
  float4 r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r20,r23,r30,r40,r50,r60,r61,r62;
  uint4 bitmask, uiDest;
  float4 fDest;
  
  float4 stereo = StereoParams.Load(0);
  
  
  //Depth block, copied from underwater distortion shader.
  r60.xyzw = cb1[49].xyzw * v0.yyyy;
  r60.xyzw = v0.xxxx * cb1[48].xyzw + r60.xyzw;
  r61.xy = asuint(cb0[37].xy);
  r61.xy = v0.xy + -r61.xy;
  r61.xy = cb0[38].zw * r61.xy;
  r62.xy = r61.xy * cb1[129].xy + cb1[128].xy;
  r62.xy = cb1[132].zw * r62.xy;
  r61.w = t0.SampleLevel(s0_s, r62.xy, 0).x;
  r61.w = max(1.00000005e-18, r61.w);
  r60.xyzw = r61.wwww * cb1[50].xyzw + r60.xyzw;
  r60.xyzw = cb1[51].xyzw + r60.xyzw;
  
  
  r30.xyzw = v0.xyzw;
  r30.x+=stereo.x*(stereo.y*r60.w-1)*cb1[129].x*0.5;
  
  r40.xyzw = v0.xyzw;
  r40.x-=stereo.x*(stereo.y*0-1)*cb1[129].x*0.5;
  
  r20.xy = asuint(cb0[37].xy);
  r20.xy = r30.xy + -r20.xy;
  r20.zw = cb0[38].zw * r20.xy;
  
  r0.x = cb1[129].x / cb1[129].y;
  r0.x = 0.00052083336 * r0.x;
  r0.y = cmp(cb1[35].w < 1);
  r0.zw = -cb1[128].xy + v0.xy;
  r0.zw = r0.zw * cb1[129].zw + float2(-0.5,-0.5);
  r1.xy = v0.ww * r0.zw;
  r1.w = v0.w;
  r2.xyw = float3(2,-2,1);
  r2.z = v0.w;
  r0.zw = asuint(cb0[37].xy);
  
  r20.zw = r30.xy + -r0.zw;
  
  r50.zw = r40.xy + -r0.zw;
  
  r0.zw = v0.xy + -r0.zw;
  
  //r23 used to fix the aura depth.
  r23.xy = cb0[38].zw * r20.zw;
  
  r3.xy = cb0[38].zw * r0.zw;
  r3.zw = r3.xy * cb1[129].xy + cb1[128].xy;
  r3.zw = cb1[132].zw * r3.zw;
  r4.x = t0.SampleLevel(s0_s, r3.zw, 0).x;
  r1.z = max(1.00000005e-18, r4.x);
  r1.xyzw = r2.xyzw * r1.xyzw;
  r2.x = r1.z * cb1[71].z + -cb1[71].w;
  r2.x = 1 / r2.x;
  r1.z = r1.z * cb1[71].x + cb1[71].y;
  r1.z = r1.z + r2.x;
  r0.y = saturate(r0.y ? r1.w : r1.z);
  r1.xy = r1.xy / r1.ww;
  r1.xy = r1.xy * cb1[72].xy + cb1[72].wz;
  r1.x = t0.SampleLevel(s0_s, r1.xy, 0).x;
  r1.y = cb2[19].x * r0.y;
  r1.z = r1.y * r0.x;
  r1.z = max(cb1[129].w, r1.z);
  r1.w = cmp(r1.y >= 0);
  r2.x = cmp(9.99999975e-06 < abs(r1.y));
  r1.y = 0.00052083336 * r1.y;
  r1.y = max(cb1[129].z, r1.y);
  r1.yz = r1.ww ? r1.yz : 0;
  r5.xw = r2.xx ? r1.yz : 0;
  r1.yz = r0.zw * cb0[38].zw + r5.xw;
  r1.yz = r1.yz * cb1[129].xy + cb1[128].xy;
  r1.yz = cb1[132].zw * r1.yz;
  r1.yz = max(cb1[133].xy, r1.yz);
  r1.yz = min(cb1[133].zw, r1.yz);
  r1.w = t1.SampleLevel(s0_s, r1.yz, 0).x;
  r2.x = r1.w * cb1[71].z + -cb1[71].w;
  r1.w = r1.w * cb1[71].x + cb1[71].y;
  r2.x = 1 / r2.x;
  r1.w = r2.x + r1.w;
  r2.x = t0.SampleLevel(s0_s, r1.yz, 0).x;
  r1.yz = cb1[132].xy * r1.yz;
  r1.yz = cb1[135].xy * r1.yz;
  r1.yz = trunc(r1.yz);
  r6.xy = (int2)r1.yz;
  r1.y = r2.x * cb1[71].z + -cb1[71].w;
  r1.z = r2.x * cb1[71].x + cb1[71].y;
  r1.y = 1 / r1.y;
  r1.y = r1.z + r1.y;
  r1.z = r1.w + -r1.y;
  r1.y = cmp(r1.w >= r1.y);
  r1.y = r1.y ? 0 : 1;
  r1.z = cmp(9.99999975e-06 < abs(r1.z));
  r1.y = r1.z ? r1.y : 1;
  r6.zw = float2(0,0);
  r1.z = t2.Load(r6.xyz).y;
  r1.z = (uint)r1.z;
  r1.y = r1.y * r1.z;
  //Multiply by 0 to check.
  r1.z = t1.SampleLevel(s0_s, r3.zw, 0).x;
  r2.xy = cb1[132].xy * r3.zw;
  r2.xy = cb1[135].xy * r2.xy;
  r2.xy = trunc(r2.xy);
  r2.xy = (int2)r2.xy;
  r1.w = r1.z * cb1[71].z + -cb1[71].w;
  r1.z = r1.z * cb1[71].x + cb1[71].y;
  r1.w = 1 / r1.w;
  r1.z = r1.z + r1.w;
  r1.w = r4.x * cb1[71].z + -cb1[71].w;
  r3.z = r4.x * cb1[71].x + cb1[71].y;
  r1.w = 1 / r1.w;
  r1.w = r3.z + r1.w;
  r3.z = r1.z + -r1.w;
  r1.z = cmp(r1.z >= r1.w);
  r1.w = cmp(9.99999975e-06 < abs(r3.z));
  r3.z = r1.z ? 0 : 1;
  r1.z = r1.w ? r1.z : 0;
  r1.w = r1.w ? r3.z : 1;
  r2.zw = float2(0,0);
  r2.x = t2.Load(r2.xyz).y;
  r2.x = (uint)r2.x;
  r2.y = r2.x * r1.w + -cb2[19].y;
  r2.y = cmp(0.899999976 < abs(r2.y));
  r2.y = r2.y ? 1.000000 : 0;
  r1.y = r2.y * r1.y;
  r5.y = -r5.w;
  r5.z = 0;
  r4.xyzw = r0.zwzw * cb0[38].zwzw + r5.xyxz;
  r4.xyzw = r4.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r4.xyzw = cb1[132].zwzw * r4.xyzw;
  r4.xyzw = max(cb1[133].xyxy, r4.xyzw);
  r4.xyzw = min(cb1[133].zwzw, r4.xyzw);
  r2.z = t1.SampleLevel(s0_s, r4.zw, 0).x;
  r2.w = r2.z * cb1[71].z + -cb1[71].w;
  r2.z = r2.z * cb1[71].x + cb1[71].y;
  r2.w = 1 / r2.w;
  r2.z = r2.z + r2.w;
  r2.w = t0.SampleLevel(s0_s, r4.zw, 0).x;
  r3.z = r2.w * cb1[71].z + -cb1[71].w;
  r2.w = r2.w * cb1[71].x + cb1[71].y;
  r3.z = 1 / r3.z;
  r2.w = r3.z + r2.w;
  r3.z = r2.z + -r2.w;
  r2.z = cmp(r2.z >= r2.w);
  r2.z = r2.z ? 0 : 1;
  r2.w = cmp(9.99999975e-06 < abs(r3.z));
  r2.z = r2.w ? r2.z : 1;
  r6.zw = float2(0,0);
  r7.xyzw = cb1[132].xyxy * r4.xyzw;
  r7.xyzw = cb1[135].xyxy * r7.xyzw;
  r7.xyzw = trunc(r7.xyzw);
  r6.xy = (int2)r7.zw;
  r7.xy = (int2)r7.xy;
  r2.w = t2.Load(r6.xyz).y;
  r2.w = (uint)r2.w;
  r2.z = r2.z * r2.w;
  r2.z = r2.z * r2.y;
  r1.y = max(r2.z, r1.y);
  r6.xyzw = r0.zwzw * cb0[38].zwzw + r5.zyzw;
  r8.xyzw = r5.xwxz * float4(-1,1,-1,1) + r3.xyxy;
  r2.zw = r5.xy * float2(-1,1) + r3.xy;
  r2.zw = r2.zw * cb1[129].xy + cb1[128].xy;
  r2.zw = cb1[132].zw * r2.zw;
  r2.zw = max(cb1[133].xy, r2.zw);
  r2.zw = min(cb1[133].zw, r2.zw);
  r5.xyzw = r8.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r5.xyzw = cb1[132].zwzw * r5.xyzw;
  r5.xyzw = max(cb1[133].xyxy, r5.xyzw);
  r5.xyzw = min(cb1[133].zwzw, r5.xyzw);
  r6.xyzw = r6.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r6.xyzw = cb1[132].zwzw * r6.xyzw;
  r6.xyzw = max(cb1[133].xyxy, r6.xyzw);
  r6.xyzw = min(cb1[133].zwzw, r6.xyzw);
  r3.z = t1.SampleLevel(s0_s, r6.xy, 0).x;
  r3.w = r3.z * cb1[71].z + -cb1[71].w;
  r3.z = r3.z * cb1[71].x + cb1[71].y;
  r3.w = 1 / r3.w;
  r3.z = r3.z + r3.w;
  r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
  r4.z = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.z = 1 / r4.z;
  r3.w = r4.z + r3.w;
  r4.z = r3.z + -r3.w;
  r3.z = cmp(r3.z >= r3.w);
  r3.z = r3.z ? 0 : 1;
  r3.w = cmp(9.99999975e-06 < abs(r4.z));
  r3.z = r3.w ? r3.z : 1;
  r8.zw = float2(0,0);
  r9.xyzw = cb1[132].xyxy * r6.xyzw;
  r9.xyzw = cb1[135].xyxy * r9.xyzw;
  r9.xyzw = trunc(r9.xyzw);
  r8.xy = (int2)r9.xy;
  r9.xy = (int2)r9.zw;
  r3.w = t2.Load(r8.xyz).y;
  r3.w = (uint)r3.w;
  r3.z = r3.z * r3.w;
  r3.z = r3.z * r2.y;
  r3.w = t1.SampleLevel(s0_s, r4.xy, 0).x;
  r4.x = t0.SampleLevel(s0_s, r4.xy, 0).x;
  r4.y = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.y = 1 / r4.y;
  r3.w = r4.y + r3.w;
  r4.y = r4.x * cb1[71].z + -cb1[71].w;
  r4.x = r4.x * cb1[71].x + cb1[71].y;
  r4.y = 1 / r4.y;
  r4.x = r4.x + r4.y;
  r4.y = -r4.x + r3.w;
  r3.w = cmp(r3.w >= r4.x);
  r3.w = r3.w ? 0 : 1;
  r4.x = cmp(9.99999975e-06 < abs(r4.y));
  r3.w = r4.x ? r3.w : 1;
  r7.zw = float2(0,0);
  r4.x = t2.Load(r7.xyz).y;
  r4.x = (uint)r4.x;
  r3.w = r4.x * r3.w;
  r3.w = r3.w * r2.y;
  r3.z = max(r3.z, r3.w);
  r1.y = max(r3.z, r1.y);
  r3.z = t1.SampleLevel(s0_s, r6.zw, 0).x;
  r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
  r4.x = r3.z * cb1[71].z + -cb1[71].w;
  r3.z = r3.z * cb1[71].x + cb1[71].y;
  r4.x = 1 / r4.x;
  r3.z = r4.x + r3.z;
  r4.x = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.x = 1 / r4.x;
  r3.w = r4.x + r3.w;
  r4.x = r3.z + -r3.w;
  r3.z = cmp(r3.z >= r3.w);
  r3.z = r3.z ? 0 : 1;
  r3.w = cmp(9.99999975e-06 < abs(r4.x));
  r3.z = r3.w ? r3.z : 1;
  r9.zw = float2(0,0);
  r3.w = t2.Load(r9.xyz).y;
  r3.w = (uint)r3.w;
  r3.z = r3.z * r3.w;
  r3.z = r3.z * r2.y;
  r3.w = t1.SampleLevel(s0_s, r5.xy, 0).x;
  r4.x = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.x = 1 / r4.x;
  r3.w = r4.x + r3.w;
  r4.x = t0.SampleLevel(s0_s, r5.xy, 0).x;
  r4.y = r4.x * cb1[71].z + -cb1[71].w;
  r4.x = r4.x * cb1[71].x + cb1[71].y;
  r4.y = 1 / r4.y;
  r4.x = r4.x + r4.y;
  r4.y = -r4.x + r3.w;
  r3.w = cmp(r3.w >= r4.x);
  r3.w = r3.w ? 0 : 1;
  r4.x = cmp(9.99999975e-06 < abs(r4.y));
  r3.w = r4.x ? r3.w : 1;
  r4.xyzw = cb1[132].xyxy * r5.xyzw;
  r4.xyzw = cb1[135].xyxy * r4.xyzw;
  r4.xyzw = trunc(r4.xyzw);
  r6.xy = (int2)r4.xy;
  r4.xy = (int2)r4.zw;
  r6.zw = float2(0,0);
  r5.x = t2.Load(r6.xyz).y;
  r5.x = (uint)r5.x;
  r3.w = r5.x * r3.w;
  r3.w = r3.w * r2.y;
  r3.z = max(r3.z, r3.w);
  r3.w = t1.SampleLevel(s0_s, r5.zw, 0).x;
  r5.x = t0.SampleLevel(s0_s, r5.zw, 0).x;
  r5.y = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r5.y = 1 / r5.y;
  r3.w = r5.y + r3.w;
  r5.y = r5.x * cb1[71].z + -cb1[71].w;
  r5.x = r5.x * cb1[71].x + cb1[71].y;
  r5.y = 1 / r5.y;
  r5.x = r5.x + r5.y;
  r5.y = -r5.x + r3.w;
  r3.w = cmp(r3.w >= r5.x);
  r3.w = r3.w ? 0 : 1;
  r5.x = cmp(9.99999975e-06 < abs(r5.y));
  r3.w = r5.x ? r3.w : 1;
  r4.zw = float2(0,0);
  r4.x = t2.Load(r4.xyz).y;
  r4.x = (uint)r4.x;
  r3.w = r4.x * r3.w;
  r3.w = r3.w * r2.y;
  r4.x = t1.SampleLevel(s0_s, r2.zw, 0).x;
  r4.y = r4.x * cb1[71].z + -cb1[71].w;
  r4.x = r4.x * cb1[71].x + cb1[71].y;
  r4.y = 1 / r4.y;
  r4.x = r4.x + r4.y;
  r4.y = t0.SampleLevel(s0_s, r2.zw, 0).x;
  r2.zw = cb1[132].xy * r2.zw;
  r2.zw = cb1[135].xy * r2.zw;
  r2.zw = trunc(r2.zw);
  r5.xy = (int2)r2.zw;
  r2.z = r4.y * cb1[71].z + -cb1[71].w;
  r2.w = r4.y * cb1[71].x + cb1[71].y;
  r2.z = 1 / r2.z;
  r2.z = r2.w + r2.z;
  r2.w = r4.x + -r2.z;
  r2.z = cmp(r4.x >= r2.z);
  r2.z = r2.z ? 0 : 1;
  r2.w = cmp(9.99999975e-06 < abs(r2.w));
  r2.z = r2.w ? r2.z : 1;
  r5.zw = float2(0,0);
  r2.w = t2.Load(r5.xyz).y;
  r2.w = (uint)r2.w;
  r2.z = r2.z * r2.w;
  r2.y = r2.z * r2.y;
  r2.y = max(r3.w, r2.y);
  r2.y = max(r3.z, r2.y);
  r1.y = max(r2.y, r1.y);
  r1.y = -cb2[19].y + r1.y;
  r1.y = cmp(9.99999975e-06 < abs(r1.y));
  r4.x = cb2[4].w * cb1[143].y;
  r4.y = cb2[5].x * cb1[143].y;
  r2.yz = cb2[3].xz * r0.yy;
  r2.yz = max(cb2[3].yw, r2.yz);
  r2.yz = min(cb2[3].xz, r2.yz);
  r3.zw = r23.xy * r2.yz + r4.xy;
  r2.yz = r23.xy * r2.yz;
  r2.yz = cb1[143].yy * cb2[2].zw + r2.yz;
  r2.y = t3.Sample(s1_s, r2.yz).x;
  r2.z = t3.Sample(s1_s, r3.zw).x;
  r2.y = r2.y + r2.z;
  r2.y = cb2[5].y * r2.y;
  r4.xyz = t6.Sample(s4_s, r2.yy).xyz;
  r5.xyz = log2(r4.xyz);
  r4.xyz = cmp(float3(0,0,0) >= r4.xyz);
  r5.xyz = cb2[19].zzz * r5.xyz;
  r5.xyz = exp2(r5.xyz);
  r4.xyz = r4.xyz ? float3(0,0,0) : r5.xyz;
  r4.xyz = cb2[21].xyz * r4.xyz;
  r4.xyz = cb2[21].www * r4.xyz;
  r4.xyz = r1.yyy ? float3(0,0,0) : r4.xyz;
  r1.y = r4.x + r4.y;
  r1.y = r1.y + r4.z;
  r1.y = cmp(9.99999975e-06 < abs(r1.y));
  r2.zw = r3.xy * cb0[5].xy + cb0[4].xy;
  r5.xyz = t7.Sample(s5_s, r2.zw).xyz;
  r6.xyz = cb1[136].www * r5.xyz + -r4.xyz;
  r4.xyz = cb2[22].zzz * r6.xyz + r4.xyz;
  r4.xyz = r1.yyy ? r4.xyz : 0;
  r1.y = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.y = 1 / r1.y;
  r1.x = r1.x + r1.y;
  r1.y = r1.x * 0.00100000005 + -cb2[24].x;
  r1.x = 0.00100000005 * r1.x;
  r1.x = cmp(r1.x >= cb2[24].x);
  r1.y = cmp(9.99999975e-06 < abs(r1.y));
  r1.x = r1.y ? r1.x : 0;
  r1.xz = r1.xz ? float2(1,1) : 0;
  r6.xyz = -cb1[136].www * r5.xyz + cb2[24].yzw;
  r7.xyz = cb1[136].www * r5.xyz;
  r6.xyz = r1.xxx * r6.xyz + r7.xyz;
  r1.x = min(1, r2.x);
  r6.xyz = r1.xxx * r6.xyz;
  r6.xyz = r6.xyz * r1.zzz;
  r6.xyw = cb2[25].xxx * r6.xyz;
  r8.xyz = cb1[136].www * r5.xyz + -r6.xyw;
  r8.xyz = cb2[25].www * r8.xyz + r6.xyw;
  r1.x = r6.x + r6.y;
  r1.x = r6.z * cb2[25].x + r1.x;
  r1.x = cmp(9.99999975e-06 < abs(r1.x));
  r6.xyz = r1.xxx ? r8.xyz : 0;
  r4.xyz = cb2[26].xxx * r6.xyz + r4.xyz;
  r1.x = cb2[12].x * r0.y;
  r0.y = cb2[1].x * r0.y;
  r1.y = r1.x * r0.x;
  r0.x = r0.y * r0.x;
  r0.x = max(cb1[129].w, r0.x);
  r1.y = max(cb1[129].w, r1.y);
  r2.z = cmp(r1.x >= 0);
  r2.w = cmp(9.99999975e-06 < abs(r1.x));
  r1.x = 0.00052083336 * r1.x;
  r1.x = max(cb1[129].z, r1.x);
  r1.xy = r2.zz ? r1.xy : 0;
  r6.xw = r2.ww ? r1.xy : 0;
  r1.xy = r0.zw * cb0[38].zw + r6.xw;
  r1.xy = r1.xy * cb1[129].xy + cb1[128].xy;
  r1.xy = cb1[132].zw * r1.xy;
  r1.xy = max(cb1[133].xy, r1.xy);
  r1.xy = min(cb1[133].zw, r1.xy);
  r2.z = t1.SampleLevel(s0_s, r1.xy, 0).x;
  r2.w = r2.z * cb1[71].z + -cb1[71].w;
  r2.z = r2.z * cb1[71].x + cb1[71].y;
  r2.w = 1 / r2.w;
  r2.z = r2.z + r2.w;
  r2.w = t0.SampleLevel(s0_s, r1.xy, 0).x;
  r1.xy = cb1[132].xy * r1.xy;
  r1.xy = cb1[135].xy * r1.xy;
  r1.xy = trunc(r1.xy);
  r8.xy = (int2)r1.xy;
  r1.x = r2.w * cb1[71].z + -cb1[71].w;
  r1.y = r2.w * cb1[71].x + cb1[71].y;
  r1.x = 1 / r1.x;
  r1.x = r1.y + r1.x;
  r1.y = r2.z + -r1.x;
  r1.x = cmp(r2.z >= r1.x);
  r1.x = r1.x ? 0 : 1;
  r1.y = cmp(9.99999975e-06 < abs(r1.y));
  r1.x = r1.y ? r1.x : 1;
  r8.zw = float2(0,0);
  r1.y = t2.Load(r8.xyz).y;
  r1.y = (uint)r1.y;
  r1.x = r1.x * r1.y;
  r1.y = r2.x * r1.w + -cb2[12].y;
  r1.w = r2.x * r1.w + -cb2[1].y;
  r1.yw = cmp(float2(0.899999976,0.899999976) < abs(r1.yw));
  r1.yw = r1.yw ? float2(1,1) : 0;
  r1.x = r1.x * r1.y;
  r6.y = -r6.w;
  r6.z = 0;
  r8.xyzw = r0.zwzw * cb0[38].zwzw + r6.xyxz;
  r8.xyzw = r8.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r8.xyzw = cb1[132].zwzw * r8.xyzw;
  r8.xyzw = max(cb1[133].xyxy, r8.xyzw);
  r8.xyzw = min(cb1[133].zwzw, r8.xyzw);
  r2.z = t1.SampleLevel(s0_s, r8.zw, 0).x;
  r2.w = r2.z * cb1[71].z + -cb1[71].w;
  r2.z = r2.z * cb1[71].x + cb1[71].y;
  r2.w = 1 / r2.w;
  r2.z = r2.z + r2.w;
  r2.w = t0.SampleLevel(s0_s, r8.zw, 0).x;
  r3.z = r2.w * cb1[71].z + -cb1[71].w;
  r2.w = r2.w * cb1[71].x + cb1[71].y;
  r3.z = 1 / r3.z;
  r2.w = r3.z + r2.w;
  r3.z = r2.z + -r2.w;
  r2.z = cmp(r2.z >= r2.w);
  r2.z = r2.z ? 0 : 1;
  r2.w = cmp(9.99999975e-06 < abs(r3.z));
  r2.z = r2.w ? r2.z : 1;
  r9.xyzw = cb1[132].xyxy * r8.xyzw;
  r9.xyzw = cb1[135].xyxy * r9.xyzw;
  r9.xyzw = trunc(r9.xyzw);
  r10.xy = (int2)r9.zw;
  r9.xy = (int2)r9.xy;
  r10.zw = float2(0,0);
  r2.w = t2.Load(r10.xyz).y;
  r2.w = (uint)r2.w;
  r2.z = r2.z * r2.w;
  r2.z = r2.z * r1.y;
  r1.x = max(r2.z, r1.x);
  r10.xyzw = r0.zwzw * cb0[38].zwzw + r6.zyzw;
  r11.xyzw = r6.xwxz * float4(-1,1,-1,1) + r3.xyxy;
  r2.zw = r6.xy * float2(-1,1) + r3.xy;
  r2.zw = r2.zw * cb1[129].xy + cb1[128].xy;
  r2.zw = cb1[132].zw * r2.zw;
  r2.zw = max(cb1[133].xy, r2.zw);
  r2.zw = min(cb1[133].zw, r2.zw);
  r6.xyzw = r11.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r6.xyzw = cb1[132].zwzw * r6.xyzw;
  r6.xyzw = max(cb1[133].xyxy, r6.xyzw);
  r6.xyzw = min(cb1[133].zwzw, r6.xyzw);
  r10.xyzw = r10.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r10.xyzw = cb1[132].zwzw * r10.xyzw;
  r10.xyzw = max(cb1[133].xyxy, r10.xyzw);
  r10.xyzw = min(cb1[133].zwzw, r10.xyzw);
  r3.z = t1.SampleLevel(s0_s, r10.xy, 0).x;
  r3.w = r3.z * cb1[71].z + -cb1[71].w;
  r3.z = r3.z * cb1[71].x + cb1[71].y;
  r3.w = 1 / r3.w;
  r3.z = r3.z + r3.w;
  r3.w = t0.SampleLevel(s0_s, r10.xy, 0).x;
  r4.w = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.w = 1 / r4.w;
  r3.w = r4.w + r3.w;
  r4.w = r3.z + -r3.w;
  r3.z = cmp(r3.z >= r3.w);
  r3.z = r3.z ? 0 : 1;
  r3.w = cmp(9.99999975e-06 < abs(r4.w));
  r3.z = r3.w ? r3.z : 1;
  r11.xyzw = cb1[132].xyxy * r10.xyzw;
  r11.xyzw = cb1[135].xyxy * r11.xyzw;
  r11.xyzw = trunc(r11.xyzw);
  r12.xy = (int2)r11.xy;
  r11.xy = (int2)r11.zw;
  r12.zw = float2(0,0);
  r3.w = t2.Load(r12.xyz).y;
  r3.w = (uint)r3.w;
  r3.z = r3.z * r3.w;
  r3.z = r3.z * r1.y;
  r3.w = t1.SampleLevel(s0_s, r8.xy, 0).x;
  r4.w = t0.SampleLevel(s0_s, r8.xy, 0).x;
  r5.w = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r5.w = 1 / r5.w;
  r3.w = r5.w + r3.w;
  r5.w = r4.w * cb1[71].z + -cb1[71].w;
  r4.w = r4.w * cb1[71].x + cb1[71].y;
  r5.w = 1 / r5.w;
  r4.w = r5.w + r4.w;
  r5.w = -r4.w + r3.w;
  r3.w = cmp(r3.w >= r4.w);
  r3.w = r3.w ? 0 : 1;
  r4.w = cmp(9.99999975e-06 < abs(r5.w));
  r3.w = r4.w ? r3.w : 1;
  r9.zw = float2(0,0);
  r4.w = t2.Load(r9.xyz).y;
  r4.w = (uint)r4.w;
  r3.w = r4.w * r3.w;
  r3.w = r3.w * r1.y;
  r3.z = max(r3.z, r3.w);
  r1.x = max(r3.z, r1.x);
  r3.z = t1.SampleLevel(s0_s, r10.zw, 0).x;
  r3.w = t0.SampleLevel(s0_s, r10.zw, 0).x;
  r4.w = r3.z * cb1[71].z + -cb1[71].w;
  r3.z = r3.z * cb1[71].x + cb1[71].y;
  r4.w = 1 / r4.w;
  r3.z = r4.w + r3.z;
  r4.w = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.w = 1 / r4.w;
  r3.w = r4.w + r3.w;
  r4.w = r3.z + -r3.w;
  r3.z = cmp(r3.z >= r3.w);
  r3.z = r3.z ? 0 : 1;
  r3.w = cmp(9.99999975e-06 < abs(r4.w));
  r3.z = r3.w ? r3.z : 1;
  r11.zw = float2(0,0);
  r3.w = t2.Load(r11.xyz).y;
  r3.w = (uint)r3.w;
  r3.z = r3.z * r3.w;
  r3.z = r3.z * r1.y;
  r3.w = t1.SampleLevel(s0_s, r6.xy, 0).x;
  r4.w = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r4.w = 1 / r4.w;
  r3.w = r4.w + r3.w;
  r4.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
  r5.w = r4.w * cb1[71].z + -cb1[71].w;
  r4.w = r4.w * cb1[71].x + cb1[71].y;
  r5.w = 1 / r5.w;
  r4.w = r5.w + r4.w;
  r5.w = -r4.w + r3.w;
  r3.w = cmp(r3.w >= r4.w);
  r3.w = r3.w ? 0 : 1;
  r4.w = cmp(9.99999975e-06 < abs(r5.w));
  r3.w = r4.w ? r3.w : 1;
  r8.xyzw = cb1[132].xyxy * r6.xyzw;
  r8.xyzw = cb1[135].xyxy * r8.xyzw;
  r8.xyzw = trunc(r8.xyzw);
  r9.xy = (int2)r8.xy;
  r8.xy = (int2)r8.zw;
  r9.zw = float2(0,0);
  r4.w = t2.Load(r9.xyz).y;
  r4.w = (uint)r4.w;
  r3.w = r4.w * r3.w;
  r3.w = r3.w * r1.y;
  r3.z = max(r3.z, r3.w);
  r3.w = t1.SampleLevel(s0_s, r6.zw, 0).x;
  r4.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
  r5.w = r3.w * cb1[71].z + -cb1[71].w;
  r3.w = r3.w * cb1[71].x + cb1[71].y;
  r5.w = 1 / r5.w;
  r3.w = r5.w + r3.w;
  r5.w = r4.w * cb1[71].z + -cb1[71].w;
  r4.w = r4.w * cb1[71].x + cb1[71].y;
  r5.w = 1 / r5.w;
  r4.w = r5.w + r4.w;
  r5.w = -r4.w + r3.w;
  r3.w = cmp(r3.w >= r4.w);
  r3.w = r3.w ? 0 : 1;
  r4.w = cmp(9.99999975e-06 < abs(r5.w));
  r3.w = r4.w ? r3.w : 1;
  r8.zw = float2(0,0);
  r4.w = t2.Load(r8.xyz).y;
  r4.w = (uint)r4.w;
  r3.w = r4.w * r3.w;
  r3.w = r3.w * r1.y;
  r4.w = t1.SampleLevel(s0_s, r2.zw, 0).x;
  r5.w = r4.w * cb1[71].z + -cb1[71].w;
  r4.w = r4.w * cb1[71].x + cb1[71].y;
  r5.w = 1 / r5.w;
  r4.w = r5.w + r4.w;
  r5.w = t0.SampleLevel(s0_s, r2.zw, 0).x;
  r2.zw = cb1[132].xy * r2.zw;
  r2.zw = cb1[135].xy * r2.zw;
  r2.zw = trunc(r2.zw);
  r6.xy = (int2)r2.zw;
  r2.z = r5.w * cb1[71].z + -cb1[71].w;
  r2.w = r5.w * cb1[71].x + cb1[71].y;
  r2.z = 1 / r2.z;
  r2.z = r2.w + r2.z;
  r2.w = r4.w + -r2.z;
  r2.z = cmp(r4.w >= r2.z);
  r2.z = r2.z ? 0 : 1;
  r2.w = cmp(9.99999975e-06 < abs(r2.w));
  r2.z = r2.w ? r2.z : 1;
  r6.zw = float2(0,0);
  r2.w = t2.Load(r6.xyz).y;
  r2.w = (uint)r2.w;
  r2.z = r2.z * r2.w;
  r1.y = r2.z * r1.y;
  r1.y = max(r3.w, r1.y);
  r1.y = max(r3.z, r1.y);
  r1.x = max(r1.x, r1.y);
  r1.x = -cb2[12].y + r1.x;
  r1.x = cmp(9.99999975e-06 < abs(r1.x));
  r6.xyz = t5.Sample(s3_s, r2.yy).xyz;
  r2.yzw = t4.Sample(s2_s, r2.yy).xyz;
  r8.xyz = log2(r6.xyz);
  r6.xyz = cmp(float3(0,0,0) >= r6.xyz);
  r8.xyz = cb2[12].zzz * r8.xyz;
  r8.xyz = exp2(r8.xyz);
  r6.xyz = r6.xyz ? float3(0,0,0) : r8.xyz;
  r6.xyz = cb2[14].xyz * r6.xyz;
  r6.xyz = cb2[14].www * r6.xyz;
  r6.xyz = r1.xxx ? float3(0,0,0) : r6.xyz;
  r1.x = r6.x + r6.y;
  r1.x = r1.x + r6.z;
  r1.x = cmp(9.99999975e-06 < abs(r1.x));
  r8.xyz = cb1[136].www * r5.xyz + -r6.xyz;
  r6.xyz = cb2[15].zzz * r8.xyz + r6.xyz;
  r6.xyz = r1.xxx ? r6.xyz : 0;
  r1.x = cb2[17].x * r1.z;
  r1.y = cb2[10].x * r1.z;
  r1.y = cb2[10].w * r1.y;
  r1.x = cb2[17].w * r1.x;
  r1.z = -cb2[12].y + r2.x;
  r2.x = -cb2[1].y + r2.x;
  r2.x = cmp(9.99999975e-06 < abs(r2.x));
  r1.y = r2.x ? 0 : r1.y;
  r1.z = cmp(9.99999975e-06 < abs(r1.z));
  r1.x = r1.z ? 0 : r1.x;
  r8.xyz = cb1[136].www * r5.xyz + -r1.xxx;
  r8.xyz = cb2[18].zzz * r8.xyz + r1.xxx;
  r1.x = 3 * r1.x;
  r1.x = cmp(9.99999975e-06 < abs(r1.x));
  r8.xyz = r1.xxx ? r8.xyz : 0;
  r6.xyz = r8.xyz * cb2[18].www + r6.xyz;
  r4.xyz = r6.xyz + r4.xyz;
  r1.x = 0.00052083336 * r0.y;
  r1.x = max(cb1[129].z, r1.x);
  r1.z = cmp(r0.y >= 0);
  r0.y = cmp(9.99999975e-06 < abs(r0.y));
  r1.x = r1.z ? r1.x : 0;
  r0.x = r1.z ? r0.x : 0;
  r6.w = r0.y ? r0.x : 0;
  r6.x = r0.y ? r1.x : 0;
  r0.xy = r0.zw * cb0[38].zw + r6.xw;
  r0.xy = r0.xy * cb1[129].xy + cb1[128].xy;
  r0.xy = cb1[132].zw * r0.xy;
  r0.xy = max(cb1[133].xy, r0.xy);
  r0.xy = min(cb1[133].zw, r0.xy);
  
  //r0.x+=stereo.x*10.5;
  
  r1.x = t1.SampleLevel(s0_s, r0.xy, 0).x;
  
  //r0.x-=stereo.x*1280000.5;
  
  r1.z = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r1.x = r1.x + r1.z;
  r1.z = t0.SampleLevel(s0_s, r0.xy, 0).x;
  r0.xy = cb1[132].xy * r0.xy;
  r0.xy = cb1[135].xy * r0.xy;
  r0.xy = trunc(r0.xy);
  r8.xy = (int2)r0.xy;
  r0.x = r1.z * cb1[71].z + -cb1[71].w;
  r0.y = r1.z * cb1[71].x + cb1[71].y;
  r0.x = 1 / r0.x;
  r0.x = r0.y + r0.x;
  r0.y = r1.x + -r0.x;
  r0.x = cmp(r1.x >= r0.x);
  r0.x = r0.x ? 0 : 1;
  r0.y = cmp(9.99999975e-06 < abs(r0.y));
  r0.x = r0.y ? r0.x : 1;
  r8.zw = float2(0,0);
  r0.y = t2.Load(r8.xyz).y;
  r0.y = (uint)r0.y;
  r0.x = r0.x * r0.y;
  r0.x = r0.x * r1.w;
  r6.y = -r6.w;
  r6.z = 0;
  r8.xyzw = r0.zwzw * cb0[38].zwzw + r6.xyxz;
  r9.xyzw = r0.zwzw * cb0[38].zwzw + r6.zyzw;
  r0.yz = r6.xy * float2(-1,1) + r3.xy;
  r3.xyzw = r6.xwxz * float4(-1,1,-1,1) + r3.xyxy;
  r3.xyzw = r3.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r3.xyzw = cb1[132].zwzw * r3.xyzw;
  r3.xyzw = max(cb1[133].xyxy, r3.xyzw);
  r3.xyzw = min(cb1[133].zwzw, r3.xyzw);
  r0.yz = r0.yz * cb1[129].xy + cb1[128].xy;
  r0.yz = cb1[132].zw * r0.yz;
  r0.yz = max(cb1[133].xy, r0.yz);
  r0.yz = min(cb1[133].zw, r0.yz);
  r6.xyzw = r9.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r6.xyzw = cb1[132].zwzw * r6.xyzw;
  r6.xyzw = max(cb1[133].xyxy, r6.xyzw);
  r6.xyzw = min(cb1[133].zwzw, r6.xyzw);
  r8.xyzw = r8.xyzw * cb1[129].xyxy + cb1[128].xyxy;
  r8.xyzw = cb1[132].zwzw * r8.xyzw;
  r8.xyzw = max(cb1[133].xyxy, r8.xyzw);
  r8.xyzw = min(cb1[133].zwzw, r8.xyzw);
  r0.w = t1.SampleLevel(s0_s, r8.zw, 0).x;
  r1.x = r0.w * cb1[71].z + -cb1[71].w;
  r0.w = r0.w * cb1[71].x + cb1[71].y;
  r1.x = 1 / r1.x;
  r0.w = r1.x + r0.w;
  r1.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
  r1.z = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r1.x = r1.x + r1.z;
  r1.z = -r1.x + r0.w;
  r0.w = cmp(r0.w >= r1.x);
  r0.w = r0.w ? 0 : 1;
  r1.x = cmp(9.99999975e-06 < abs(r1.z));
  r0.w = r1.x ? r0.w : 1;
  r9.xyzw = cb1[132].xyxy * r8.xyzw;
  r9.xyzw = cb1[135].xyxy * r9.xyzw;
  r9.xyzw = trunc(r9.xyzw);
  r10.xy = (int2)r9.zw;
  r9.xy = (int2)r9.xy;
  r10.zw = float2(0,0);
  r1.x = t2.Load(r10.xyz).y;
  r1.x = (uint)r1.x;
  r0.w = r1.x * r0.w;
  r0.w = r0.w * r1.w;
  r0.x = max(r0.w, r0.x);
  r0.w = t1.SampleLevel(s0_s, r8.xy, 0).x;
  r1.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
  r1.z = r0.w * cb1[71].z + -cb1[71].w;
  r0.w = r0.w * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r0.w = r1.z + r0.w;
  r1.z = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r1.x = r1.x + r1.z;
  r1.z = -r1.x + r0.w;
  r0.w = cmp(r0.w >= r1.x);
  r0.w = r0.w ? 0 : 1;
  r1.x = cmp(9.99999975e-06 < abs(r1.z));
  r0.w = r1.x ? r0.w : 1;
  r9.zw = float2(0,0);
  r1.x = t2.Load(r9.xyz).y;
  r1.x = (uint)r1.x;
  r0.w = r1.x * r0.w;
  r0.w = r0.w * r1.w;
  r1.x = t1.SampleLevel(s0_s, r6.xy, 0).x;
  r1.z = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r1.x = r1.x + r1.z;
  r1.z = t0.SampleLevel(s0_s, r6.xy, 0).x;
  r2.x = r1.z * cb1[71].z + -cb1[71].w;
  r1.z = r1.z * cb1[71].x + cb1[71].y;
  r2.x = 1 / r2.x;
  r1.z = r2.x + r1.z;
  r2.x = r1.x + -r1.z;
  r1.x = cmp(r1.x >= r1.z);
  r1.x = r1.x ? 0 : 1;
  r1.z = cmp(9.99999975e-06 < abs(r2.x));
  r1.x = r1.z ? r1.x : 1;
  r8.xyzw = cb1[132].xyxy * r6.xyzw;
  r8.xyzw = cb1[135].xyxy * r8.xyzw;
  r8.xyzw = trunc(r8.xyzw);
  r9.xy = (int2)r8.xy;
  r8.xy = (int2)r8.zw;
  r9.zw = float2(0,0);
  r1.z = t2.Load(r9.xyz).y;
  r1.z = (uint)r1.z;
  r1.x = r1.x * r1.z;
  r1.x = r1.x * r1.w;
  r0.w = max(r1.x, r0.w);
  r0.x = max(r0.w, r0.x);
  r0.w = t1.SampleLevel(s0_s, r6.zw, 0).x;
  r1.x = t0.SampleLevel(s0_s, r6.zw, 0).x;
  r1.z = r0.w * cb1[71].z + -cb1[71].w;
  r0.w = r0.w * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r0.w = r1.z + r0.w;
  r1.z = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r1.x = r1.x + r1.z;
  r1.z = -r1.x + r0.w;
  r0.w = cmp(r0.w >= r1.x);
  r0.w = r0.w ? 0 : 1;
  r1.x = cmp(9.99999975e-06 < abs(r1.z));
  r0.w = r1.x ? r0.w : 1;
  r8.zw = float2(0,0);
  r1.x = t2.Load(r8.xyz).y;
  r1.x = (uint)r1.x;
  r0.w = r1.x * r0.w;
  r0.w = r0.w * r1.w;
  r1.x = t1.SampleLevel(s0_s, r3.xy, 0).x;
  r1.z = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r1.z = 1 / r1.z;
  r1.x = r1.x + r1.z;
  r1.z = t0.SampleLevel(s0_s, r3.xy, 0).x;
  r2.x = r1.z * cb1[71].z + -cb1[71].w;
  r1.z = r1.z * cb1[71].x + cb1[71].y;
  r2.x = 1 / r2.x;
  r1.z = r2.x + r1.z;
  r2.x = r1.x + -r1.z;
  r1.x = cmp(r1.x >= r1.z);
  r1.x = r1.x ? 0 : 1;
  r1.z = cmp(9.99999975e-06 < abs(r2.x));
  r1.x = r1.z ? r1.x : 1;
  r6.xyzw = cb1[132].xyxy * r3.xyzw;
  r6.xyzw = cb1[135].xyxy * r6.xyzw;
  r6.xyzw = trunc(r6.xyzw);
  r8.xy = (int2)r6.xy;
  r6.xy = (int2)r6.zw;
  r8.zw = float2(0,0);
  r1.z = t2.Load(r8.xyz).y;
  r1.z = (uint)r1.z;
  r1.x = r1.x * r1.z;
  r1.x = r1.x * r1.w;
  r0.w = max(r1.x, r0.w);
  r1.x = t1.SampleLevel(s0_s, r3.zw, 0).x;
  r1.z = t0.SampleLevel(s0_s, r3.zw, 0).x;
  r2.x = r1.x * cb1[71].z + -cb1[71].w;
  r1.x = r1.x * cb1[71].x + cb1[71].y;
  r2.x = 1 / r2.x;
  r1.x = r2.x + r1.x;
  r2.x = r1.z * cb1[71].z + -cb1[71].w;
  r1.z = r1.z * cb1[71].x + cb1[71].y;
  r2.x = 1 / r2.x;
  r1.z = r2.x + r1.z;
  r2.x = r1.x + -r1.z;
  r1.x = cmp(r1.x >= r1.z);
  r1.x = r1.x ? 0 : 1;
  r1.z = cmp(9.99999975e-06 < abs(r2.x));
  r1.x = r1.z ? r1.x : 1;
  r6.zw = float2(0,0);
  r1.z = t2.Load(r6.xyz).y;
  r1.z = (uint)r1.z;
  r1.x = r1.x * r1.z;
  r1.x = r1.x * r1.w;
  r1.z = t1.SampleLevel(s0_s, r0.yz, 0).x;
  r2.x = r1.z * cb1[71].z + -cb1[71].w;
  r1.z = r1.z * cb1[71].x + cb1[71].y;
  r2.x = 1 / r2.x;
  r1.z = r2.x + r1.z;
  r2.x = t0.SampleLevel(s0_s, r0.yz, 0).x;
  r0.yz = cb1[132].xy * r0.yz;
  r0.yz = cb1[135].xy * r0.yz;
  r0.yz = trunc(r0.yz);
  r3.xy = (int2)r0.yz;
  r0.y = r2.x * cb1[71].z + -cb1[71].w;
  r0.z = r2.x * cb1[71].x + cb1[71].y;
  r0.y = 1 / r0.y;
  r0.y = r0.z + r0.y;
  r0.z = r1.z + -r0.y;
  r0.y = cmp(r1.z >= r0.y);
  r0.y = r0.y ? 0 : 1;
  r0.z = cmp(9.99999975e-06 < abs(r0.z));
  r0.y = r0.z ? r0.y : 1;
  r3.zw = float2(0,0);
  r0.z = t2.Load(r3.xyz).y;
  r0.z = (uint)r0.z;
  r0.y = r0.y * r0.z;
  r0.y = r0.y * r1.w;
  r0.y = max(r1.x, r0.y);
  r0.y = max(r0.w, r0.y);
  r0.x = max(r0.x, r0.y);
  r0.x = -cb2[1].y + r0.x;
  r0.x = cmp(9.99999975e-06 < abs(r0.x));
  r0.yzw = log2(r2.yzw);
  r1.xzw = cmp(float3(0,0,0) >= r2.yzw);
  r0.yzw = cb2[5].zzz * r0.yzw;
  r0.yzw = exp2(r0.yzw);
  r0.yzw = r1.xzw ? float3(0,0,0) : r0.yzw;
  r0.yzw = cb2[7].xyz * r0.yzw;
  r0.yzw = cb2[7].www * r0.yzw;
  r0.xyz = r0.xxx ? float3(0,0,0) : r0.yzw;
  r0.w = r0.x + r0.y;
  r0.w = r0.w + r0.z;
  r0.w = cmp(9.99999975e-06 < abs(r0.w));
  r1.xzw = cb1[136].www * r5.xyz + -r0.xyz;
  r0.xyz = cb2[8].zzz * r1.xzw + r0.xyz;
  r0.xyz = r0.www ? r0.xyz : 0;
  r1.xzw = cb1[136].www * r5.xyz + -r1.yyy;
  r1.xzw = cb2[11].zzz * r1.xzw + r1.yyy;
  r0.w = 3 * r1.y;
  r0.w = cmp(9.99999975e-06 < abs(r0.w));
  r1.xyz = r0.www ? r1.xzw : 0;
  r0.xyz = r1.xyz * cb2[11].www + r0.xyz;
  r0.xyz = r0.xyz + r4.xyz;
  r0.w = r0.x + r0.y;
  r0.w = r0.w + r0.z;
  r0.w = cmp(9.99999975e-06 < abs(r0.w));
  r0.xyz = r0.www ? r0.xyz : r7.xyz;
  r1.xyz = cb2[27].xyz + -r0.xyz;
  r0.xyz = cb2[26].yyy * r1.xyz + r0.xyz;
  r0.xyz = max(float3(0,0,0), r0.xyz);
  o0.xyz = cb1[136].zzz * r0.xyz;
  o0.w = 0;
  return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.198 on Tue Oct  8 19:33:14 2024
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float   xy w
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[39], immediateIndexed
dcl_constantbuffer CB1[144], immediateIndexed
dcl_constantbuffer CB2[28], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_sampler s2, mode_default
dcl_sampler s3, mode_default
dcl_sampler s4, mode_default
dcl_sampler s5, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_resource_texture2d (uint,uint,uint,uint) t2
dcl_resource_texture2d (float,float,float,float) t3
dcl_resource_texture2d (float,float,float,float) t4
dcl_resource_texture2d (float,float,float,float) t5
dcl_resource_texture2d (float,float,float,float) t6
dcl_resource_texture2d (float,float,float,float) t7
dcl_input_ps_siv linear noperspective v0.xyw, position
dcl_output o0.xyzw
dcl_temps 13
div r0.x, cb1[129].x, cb1[129].y
mul r0.x, r0.x, l(0.000520833360)
lt r0.y, cb1[35].w, l(1.000000)
add r0.zw, v0.xxxy, -cb1[128].xxxy
mad r0.zw, r0.zzzw, cb1[129].zzzw, l(0.000000, 0.000000, -0.500000, -0.500000)
mul r1.xy, r0.zwzz, v0.wwww
mov r1.w, v0.w
mov r2.xyw, l(2.000000,-2.000000,0,1.000000)
mov r2.z, v0.w
utof r0.zw, cb0[37].xxxy
add r0.zw, -r0.zzzw, v0.xxxy
mul r3.xy, r0.zwzz, cb0[38].zwzz
mad r3.zw, r3.xxxy, cb1[129].xxxy, cb1[128].xxxy
mul r3.zw, r3.zzzw, cb1[132].zzzw
sample_l_indexable(texture2d)(float,float,float,float) r4.x, r3.zwzz, t0.xyzw, s0, l(0.000000)
max r1.z, r4.x, l(1.000000046E-18)
mul r1.xyzw, r1.xyzw, r2.xyzw
mad r2.x, r1.z, cb1[71].z, -cb1[71].w
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
mad r1.z, r1.z, cb1[71].x, cb1[71].y
add r1.z, r2.x, r1.z
movc_sat r0.y, r0.y, r1.w, r1.z
div r1.xy, r1.xyxx, r1.wwww
mad r1.xy, r1.xyxx, cb1[72].xyxx, cb1[72].wzww
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r1.xyxx, t0.xyzw, s0, l(0.000000)
mul r1.y, r0.y, cb2[19].x
mul r1.z, r0.x, r1.y
max r1.z, r1.z, cb1[129].w
ge r1.w, r1.y, l(0.000000)
lt r2.x, l(0.000010), |r1.y|
mul r1.y, r1.y, l(0.000520833360)
max r1.y, r1.y, cb1[129].z
and r1.yz, r1.yyzy, r1.wwww
and r5.xw, r1.yyyz, r2.xxxx
mad r1.yz, r0.zzwz, cb0[38].zzwz, r5.xxwx
mad r1.yz, r1.yyzy, cb1[129].xxyx, cb1[128].xxyx
mul r1.yz, r1.yyzy, cb1[132].zzwz
max r1.yz, r1.yyzy, cb1[133].xxyx
min r1.yz, r1.yyzy, cb1[133].zzwz
sample_l_indexable(texture2d)(float,float,float,float) r1.w, r1.yzyy, t1.yzwx, s0, l(0.000000)
mad r2.x, r1.w, cb1[71].z, -cb1[71].w
mad r1.w, r1.w, cb1[71].x, cb1[71].y
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
add r1.w, r1.w, r2.x
sample_l_indexable(texture2d)(float,float,float,float) r2.x, r1.yzyy, t0.xyzw, s0, l(0.000000)
mul r1.yz, r1.yyzy, cb1[132].xxyx
mul r1.yz, r1.yyzy, cb1[135].xxyx
round_z r1.yz, r1.yyzy
ftoi r6.xy, r1.yzyy
mad r1.y, r2.x, cb1[71].z, -cb1[71].w
mad r1.z, r2.x, cb1[71].x, cb1[71].y
div r1.y, l(1.000000, 1.000000, 1.000000, 1.000000), r1.y
add r1.y, r1.y, r1.z
add r1.z, -r1.y, r1.w
ge r1.y, r1.w, r1.y
movc r1.y, r1.y, l(0), l(1.000000)
lt r1.z, l(0.000010), |r1.z|
movc r1.y, r1.z, r1.y, l(1.000000)
mov r6.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.z, r6.xyzw, t2.xzyw
utof r1.z, r1.z
mul r1.y, r1.z, r1.y
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r3.zwzz, t1.yzxw, s0, l(0.000000)
mul r2.xy, r3.zwzz, cb1[132].xyxx
mul r2.xy, r2.xyxx, cb1[135].xyxx
round_z r2.xy, r2.xyxx
ftoi r2.xy, r2.xyxx
mad r1.w, r1.z, cb1[71].z, -cb1[71].w
mad r1.z, r1.z, cb1[71].x, cb1[71].y
div r1.w, l(1.000000, 1.000000, 1.000000, 1.000000), r1.w
add r1.z, r1.w, r1.z
mad r1.w, r4.x, cb1[71].z, -cb1[71].w
mad r3.z, r4.x, cb1[71].x, cb1[71].y
div r1.w, l(1.000000, 1.000000, 1.000000, 1.000000), r1.w
add r1.w, r1.w, r3.z
add r3.z, -r1.w, r1.z
ge r1.z, r1.z, r1.w
lt r1.w, l(0.000010), |r3.z|
movc r3.z, r1.z, l(0), l(1.000000)
and r1.z, r1.w, r1.z
movc r1.w, r1.w, r3.z, l(1.000000)
mov r2.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r2.x, r2.xyzw, t2.yxzw
utof r2.x, r2.x
mad r2.y, r2.x, r1.w, -cb2[19].y
lt r2.y, l(0.900000), |r2.y|
and r2.y, r2.y, l(0x3f800000)
mul r1.y, r1.y, r2.y
mov r5.y, -r5.w
mov r5.z, l(0)
mad r4.xyzw, r0.zwzw, cb0[38].zwzw, r5.xyxz
mad r4.xyzw, r4.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r4.xyzw, r4.xyzw, cb1[132].zwzw
max r4.xyzw, r4.xyzw, cb1[133].xyxy
min r4.xyzw, r4.xyzw, cb1[133].zwzw
sample_l_indexable(texture2d)(float,float,float,float) r2.z, r4.zwzz, t1.yzxw, s0, l(0.000000)
mad r2.w, r2.z, cb1[71].z, -cb1[71].w
mad r2.z, r2.z, cb1[71].x, cb1[71].y
div r2.w, l(1.000000, 1.000000, 1.000000, 1.000000), r2.w
add r2.z, r2.w, r2.z
sample_l_indexable(texture2d)(float,float,float,float) r2.w, r4.zwzz, t0.yzwx, s0, l(0.000000)
mad r3.z, r2.w, cb1[71].z, -cb1[71].w
mad r2.w, r2.w, cb1[71].x, cb1[71].y
div r3.z, l(1.000000, 1.000000, 1.000000, 1.000000), r3.z
add r2.w, r2.w, r3.z
add r3.z, -r2.w, r2.z
ge r2.z, r2.z, r2.w
movc r2.z, r2.z, l(0), l(1.000000)
lt r2.w, l(0.000010), |r3.z|
movc r2.z, r2.w, r2.z, l(1.000000)
mov r6.zw, l(0,0,0,0)
mul r7.xyzw, r4.xyzw, cb1[132].xyxy
mul r7.xyzw, r7.xyzw, cb1[135].xyxy
round_z r7.xyzw, r7.xyzw
ftoi r6.xy, r7.zwzz
ftoi r7.xy, r7.xyxx
ld_indexable(texture2d)(uint,uint,uint,uint) r2.w, r6.xyzw, t2.xzwy
utof r2.w, r2.w
mul r2.z, r2.w, r2.z
mul r2.z, r2.y, r2.z
max r1.y, r1.y, r2.z
mad r6.xyzw, r0.zwzw, cb0[38].zwzw, r5.zyzw
mad r8.xyzw, r5.xwxz, l(-1.000000, 1.000000, -1.000000, 1.000000), r3.xyxy
mad r2.zw, r5.xxxy, l(0.000000, 0.000000, -1.000000, 1.000000), r3.xxxy
mad r2.zw, r2.zzzw, cb1[129].xxxy, cb1[128].xxxy
mul r2.zw, r2.zzzw, cb1[132].zzzw
max r2.zw, r2.zzzw, cb1[133].xxxy
min r2.zw, r2.zzzw, cb1[133].zzzw
mad r5.xyzw, r8.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r5.xyzw, r5.xyzw, cb1[132].zwzw
max r5.xyzw, r5.xyzw, cb1[133].xyxy
min r5.xyzw, r5.xyzw, cb1[133].zwzw
mad r6.xyzw, r6.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r6.xyzw, r6.xyzw, cb1[132].zwzw
max r6.xyzw, r6.xyzw, cb1[133].xyxy
min r6.xyzw, r6.xyzw, cb1[133].zwzw
sample_l_indexable(texture2d)(float,float,float,float) r3.z, r6.xyxx, t1.yzxw, s0, l(0.000000)
mad r3.w, r3.z, cb1[71].z, -cb1[71].w
mad r3.z, r3.z, cb1[71].x, cb1[71].y
div r3.w, l(1.000000, 1.000000, 1.000000, 1.000000), r3.w
add r3.z, r3.w, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
mad r4.z, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.z, l(1.000000, 1.000000, 1.000000, 1.000000), r4.z
add r3.w, r3.w, r4.z
add r4.z, -r3.w, r3.z
ge r3.z, r3.z, r3.w
movc r3.z, r3.z, l(0), l(1.000000)
lt r3.w, l(0.000010), |r4.z|
movc r3.z, r3.w, r3.z, l(1.000000)
mov r8.zw, l(0,0,0,0)
mul r9.xyzw, r6.xyzw, cb1[132].xyxy
mul r9.xyzw, r9.xyzw, cb1[135].xyxy
round_z r9.xyzw, r9.xyzw
ftoi r8.xy, r9.xyxx
ftoi r9.xy, r9.zwzz
ld_indexable(texture2d)(uint,uint,uint,uint) r3.w, r8.xyzw, t2.xzwy
utof r3.w, r3.w
mul r3.z, r3.w, r3.z
mul r3.z, r2.y, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r4.xyxx, t1.yzwx, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r4.x, r4.xyxx, t0.xyzw, s0, l(0.000000)
mad r4.y, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.y, l(1.000000, 1.000000, 1.000000, 1.000000), r4.y
add r3.w, r3.w, r4.y
mad r4.y, r4.x, cb1[71].z, -cb1[71].w
mad r4.x, r4.x, cb1[71].x, cb1[71].y
div r4.y, l(1.000000, 1.000000, 1.000000, 1.000000), r4.y
add r4.x, r4.y, r4.x
add r4.y, r3.w, -r4.x
ge r3.w, r3.w, r4.x
movc r3.w, r3.w, l(0), l(1.000000)
lt r4.x, l(0.000010), |r4.y|
movc r3.w, r4.x, r3.w, l(1.000000)
mov r7.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r4.x, r7.xyzw, t2.yxzw
utof r4.x, r4.x
mul r3.w, r3.w, r4.x
mul r3.w, r2.y, r3.w
max r3.z, r3.w, r3.z
max r1.y, r1.y, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.z, r6.zwzz, t1.yzxw, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
mad r4.x, r3.z, cb1[71].z, -cb1[71].w
mad r3.z, r3.z, cb1[71].x, cb1[71].y
div r4.x, l(1.000000, 1.000000, 1.000000, 1.000000), r4.x
add r3.z, r3.z, r4.x
mad r4.x, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.x, l(1.000000, 1.000000, 1.000000, 1.000000), r4.x
add r3.w, r3.w, r4.x
add r4.x, -r3.w, r3.z
ge r3.z, r3.z, r3.w
movc r3.z, r3.z, l(0), l(1.000000)
lt r3.w, l(0.000010), |r4.x|
movc r3.z, r3.w, r3.z, l(1.000000)
mov r9.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r3.w, r9.xyzw, t2.xzwy
utof r3.w, r3.w
mul r3.z, r3.w, r3.z
mul r3.z, r2.y, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r5.xyxx, t1.yzwx, s0, l(0.000000)
mad r4.x, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.x, l(1.000000, 1.000000, 1.000000, 1.000000), r4.x
add r3.w, r3.w, r4.x
sample_l_indexable(texture2d)(float,float,float,float) r4.x, r5.xyxx, t0.xyzw, s0, l(0.000000)
mad r4.y, r4.x, cb1[71].z, -cb1[71].w
mad r4.x, r4.x, cb1[71].x, cb1[71].y
div r4.y, l(1.000000, 1.000000, 1.000000, 1.000000), r4.y
add r4.x, r4.y, r4.x
add r4.y, r3.w, -r4.x
ge r3.w, r3.w, r4.x
movc r3.w, r3.w, l(0), l(1.000000)
lt r4.x, l(0.000010), |r4.y|
movc r3.w, r4.x, r3.w, l(1.000000)
mul r4.xyzw, r5.xyzw, cb1[132].xyxy
mul r4.xyzw, r4.xyzw, cb1[135].xyxy
round_z r4.xyzw, r4.xyzw
ftoi r6.xy, r4.xyxx
ftoi r4.xy, r4.zwzz
mov r6.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r5.x, r6.xyzw, t2.yxzw
utof r5.x, r5.x
mul r3.w, r3.w, r5.x
mul r3.w, r2.y, r3.w
max r3.z, r3.w, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r5.zwzz, t1.yzwx, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r5.x, r5.zwzz, t0.xyzw, s0, l(0.000000)
mad r5.y, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r5.y, l(1.000000, 1.000000, 1.000000, 1.000000), r5.y
add r3.w, r3.w, r5.y
mad r5.y, r5.x, cb1[71].z, -cb1[71].w
mad r5.x, r5.x, cb1[71].x, cb1[71].y
div r5.y, l(1.000000, 1.000000, 1.000000, 1.000000), r5.y
add r5.x, r5.y, r5.x
add r5.y, r3.w, -r5.x
ge r3.w, r3.w, r5.x
movc r3.w, r3.w, l(0), l(1.000000)
lt r5.x, l(0.000010), |r5.y|
movc r3.w, r5.x, r3.w, l(1.000000)
mov r4.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r4.x, r4.xyzw, t2.yxzw
utof r4.x, r4.x
mul r3.w, r3.w, r4.x
mul r3.w, r2.y, r3.w
sample_l_indexable(texture2d)(float,float,float,float) r4.x, r2.zwzz, t1.xyzw, s0, l(0.000000)
mad r4.y, r4.x, cb1[71].z, -cb1[71].w
mad r4.x, r4.x, cb1[71].x, cb1[71].y
div r4.y, l(1.000000, 1.000000, 1.000000, 1.000000), r4.y
add r4.x, r4.y, r4.x
sample_l_indexable(texture2d)(float,float,float,float) r4.y, r2.zwzz, t0.yxzw, s0, l(0.000000)
mul r2.zw, r2.zzzw, cb1[132].xxxy
mul r2.zw, r2.zzzw, cb1[135].xxxy
round_z r2.zw, r2.zzzw
ftoi r5.xy, r2.zwzz
mad r2.z, r4.y, cb1[71].z, -cb1[71].w
mad r2.w, r4.y, cb1[71].x, cb1[71].y
div r2.z, l(1.000000, 1.000000, 1.000000, 1.000000), r2.z
add r2.z, r2.z, r2.w
add r2.w, -r2.z, r4.x
ge r2.z, r4.x, r2.z
movc r2.z, r2.z, l(0), l(1.000000)
lt r2.w, l(0.000010), |r2.w|
movc r2.z, r2.w, r2.z, l(1.000000)
mov r5.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r2.w, r5.xyzw, t2.xzwy
utof r2.w, r2.w
mul r2.z, r2.w, r2.z
mul r2.y, r2.y, r2.z
max r2.y, r2.y, r3.w
max r2.y, r2.y, r3.z
max r1.y, r1.y, r2.y
add r1.y, r1.y, -cb2[19].y
lt r1.y, l(0.000010), |r1.y|
mul r4.x, cb1[143].y, cb2[4].w
mul r4.y, cb1[143].y, cb2[5].x
mul r2.yz, r0.yyyy, cb2[3].xxzx
max r2.yz, r2.yyzy, cb2[3].yywy
min r2.yz, r2.yyzy, cb2[3].xxzx
mad r3.zw, r3.xxxy, r2.yyyz, r4.xxxy
mul r2.yz, r2.yyzy, r3.xxyx
mad r2.yz, cb1[143].yyyy, cb2[2].zzwz, r2.yyzy
sample_indexable(texture2d)(float,float,float,float) r2.y, r2.yzyy, t3.yxzw, s1
sample_indexable(texture2d)(float,float,float,float) r2.z, r3.zwzz, t3.yzxw, s1
add r2.y, r2.z, r2.y
mul r2.y, r2.y, cb2[5].y
sample_indexable(texture2d)(float,float,float,float) r4.xyz, r2.yyyy, t6.xyzw, s4
log r5.xyz, r4.xyzx
ge r4.xyz, l(0.000000, 0.000000, 0.000000, 0.000000), r4.xyzx
mul r5.xyz, r5.xyzx, cb2[19].zzzz
exp r5.xyz, r5.xyzx
movc r4.xyz, r4.xyzx, l(0,0,0,0), r5.xyzx
mul r4.xyz, r4.xyzx, cb2[21].xyzx
mul r4.xyz, r4.xyzx, cb2[21].wwww
movc r4.xyz, r1.yyyy, l(0,0,0,0), r4.xyzx
add r1.y, r4.y, r4.x
add r1.y, r4.z, r1.y
lt r1.y, l(0.000010), |r1.y|
mad r2.zw, r3.xxxy, cb0[5].xxxy, cb0[4].xxxy
sample_indexable(texture2d)(float,float,float,float) r5.xyz, r2.zwzz, t7.xyzw, s5
mad r6.xyz, cb1[136].wwww, r5.xyzx, -r4.xyzx
mad r4.xyz, cb2[22].zzzz, r6.xyzx, r4.xyzx
and r4.xyz, r1.yyyy, r4.xyzx
mad r1.y, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.y, l(1.000000, 1.000000, 1.000000, 1.000000), r1.y
add r1.x, r1.y, r1.x
mad r1.y, r1.x, l(0.001000), -cb2[24].x
mul r1.x, r1.x, l(0.001000)
ge r1.x, r1.x, cb2[24].x
lt r1.y, l(0.000010), |r1.y|
and r1.x, r1.y, r1.x
and r1.xz, r1.xxzx, l(0x3f800000, 0, 0x3f800000, 0)
mad r6.xyz, -cb1[136].wwww, r5.xyzx, cb2[24].yzwy
mul r7.xyz, r5.xyzx, cb1[136].wwww
mad r6.xyz, r1.xxxx, r6.xyzx, r7.xyzx
min r1.x, r2.x, l(1.000000)
mul r6.xyz, r6.xyzx, r1.xxxx
mul r6.xyz, r1.zzzz, r6.xyzx
mul r6.xyw, r6.xyxz, cb2[25].xxxx
mad r8.xyz, cb1[136].wwww, r5.xyzx, -r6.xywx
mad r8.xyz, cb2[25].wwww, r8.xyzx, r6.xywx
add r1.x, r6.y, r6.x
mad r1.x, r6.z, cb2[25].x, r1.x
lt r1.x, l(0.000010), |r1.x|
and r6.xyz, r8.xyzx, r1.xxxx
mad r4.xyz, cb2[26].xxxx, r6.xyzx, r4.xyzx
mul r1.x, r0.y, cb2[12].x
mul r0.y, r0.y, cb2[1].x
mul r1.y, r0.x, r1.x
mul r0.x, r0.x, r0.y
max r0.x, r0.x, cb1[129].w
max r1.y, r1.y, cb1[129].w
ge r2.z, r1.x, l(0.000000)
lt r2.w, l(0.000010), |r1.x|
mul r1.x, r1.x, l(0.000520833360)
max r1.x, r1.x, cb1[129].z
and r1.xy, r1.xyxx, r2.zzzz
and r6.xw, r1.xxxy, r2.wwww
mad r1.xy, r0.zwzz, cb0[38].zwzz, r6.xwxx
mad r1.xy, r1.xyxx, cb1[129].xyxx, cb1[128].xyxx
mul r1.xy, r1.xyxx, cb1[132].zwzz
max r1.xy, r1.xyxx, cb1[133].xyxx
min r1.xy, r1.xyxx, cb1[133].zwzz
sample_l_indexable(texture2d)(float,float,float,float) r2.z, r1.xyxx, t1.yzxw, s0, l(0.000000)
mad r2.w, r2.z, cb1[71].z, -cb1[71].w
mad r2.z, r2.z, cb1[71].x, cb1[71].y
div r2.w, l(1.000000, 1.000000, 1.000000, 1.000000), r2.w
add r2.z, r2.w, r2.z
sample_l_indexable(texture2d)(float,float,float,float) r2.w, r1.xyxx, t0.yzwx, s0, l(0.000000)
mul r1.xy, r1.xyxx, cb1[132].xyxx
mul r1.xy, r1.xyxx, cb1[135].xyxx
round_z r1.xy, r1.xyxx
ftoi r8.xy, r1.xyxx
mad r1.x, r2.w, cb1[71].z, -cb1[71].w
mad r1.y, r2.w, cb1[71].x, cb1[71].y
div r1.x, l(1.000000, 1.000000, 1.000000, 1.000000), r1.x
add r1.x, r1.x, r1.y
add r1.y, -r1.x, r2.z
ge r1.x, r2.z, r1.x
movc r1.x, r1.x, l(0), l(1.000000)
lt r1.y, l(0.000010), |r1.y|
movc r1.x, r1.y, r1.x, l(1.000000)
mov r8.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.y, r8.xyzw, t2.xyzw
utof r1.y, r1.y
mul r1.x, r1.y, r1.x
mad r1.y, r2.x, r1.w, -cb2[12].y
mad r1.w, r2.x, r1.w, -cb2[1].y
lt r1.yw, l(0.000000, 0.900000, 0.000000, 0.900000), |r1.yyyw|
and r1.yw, r1.yyyw, l(0, 0x3f800000, 0, 0x3f800000)
mul r1.x, r1.y, r1.x
mov r6.y, -r6.w
mov r6.z, l(0)
mad r8.xyzw, r0.zwzw, cb0[38].zwzw, r6.xyxz
mad r8.xyzw, r8.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r8.xyzw, r8.xyzw, cb1[132].zwzw
max r8.xyzw, r8.xyzw, cb1[133].xyxy
min r8.xyzw, r8.xyzw, cb1[133].zwzw
sample_l_indexable(texture2d)(float,float,float,float) r2.z, r8.zwzz, t1.yzxw, s0, l(0.000000)
mad r2.w, r2.z, cb1[71].z, -cb1[71].w
mad r2.z, r2.z, cb1[71].x, cb1[71].y
div r2.w, l(1.000000, 1.000000, 1.000000, 1.000000), r2.w
add r2.z, r2.w, r2.z
sample_l_indexable(texture2d)(float,float,float,float) r2.w, r8.zwzz, t0.yzwx, s0, l(0.000000)
mad r3.z, r2.w, cb1[71].z, -cb1[71].w
mad r2.w, r2.w, cb1[71].x, cb1[71].y
div r3.z, l(1.000000, 1.000000, 1.000000, 1.000000), r3.z
add r2.w, r2.w, r3.z
add r3.z, -r2.w, r2.z
ge r2.z, r2.z, r2.w
movc r2.z, r2.z, l(0), l(1.000000)
lt r2.w, l(0.000010), |r3.z|
movc r2.z, r2.w, r2.z, l(1.000000)
mul r9.xyzw, r8.xyzw, cb1[132].xyxy
mul r9.xyzw, r9.xyzw, cb1[135].xyxy
round_z r9.xyzw, r9.xyzw
ftoi r10.xy, r9.zwzz
ftoi r9.xy, r9.xyxx
mov r10.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r2.w, r10.xyzw, t2.xzwy
utof r2.w, r2.w
mul r2.z, r2.w, r2.z
mul r2.z, r1.y, r2.z
max r1.x, r1.x, r2.z
mad r10.xyzw, r0.zwzw, cb0[38].zwzw, r6.zyzw
mad r11.xyzw, r6.xwxz, l(-1.000000, 1.000000, -1.000000, 1.000000), r3.xyxy
mad r2.zw, r6.xxxy, l(0.000000, 0.000000, -1.000000, 1.000000), r3.xxxy
mad r2.zw, r2.zzzw, cb1[129].xxxy, cb1[128].xxxy
mul r2.zw, r2.zzzw, cb1[132].zzzw
max r2.zw, r2.zzzw, cb1[133].xxxy
min r2.zw, r2.zzzw, cb1[133].zzzw
mad r6.xyzw, r11.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r6.xyzw, r6.xyzw, cb1[132].zwzw
max r6.xyzw, r6.xyzw, cb1[133].xyxy
min r6.xyzw, r6.xyzw, cb1[133].zwzw
mad r10.xyzw, r10.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r10.xyzw, r10.xyzw, cb1[132].zwzw
max r10.xyzw, r10.xyzw, cb1[133].xyxy
min r10.xyzw, r10.xyzw, cb1[133].zwzw
sample_l_indexable(texture2d)(float,float,float,float) r3.z, r10.xyxx, t1.yzxw, s0, l(0.000000)
mad r3.w, r3.z, cb1[71].z, -cb1[71].w
mad r3.z, r3.z, cb1[71].x, cb1[71].y
div r3.w, l(1.000000, 1.000000, 1.000000, 1.000000), r3.w
add r3.z, r3.w, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t0.yzwx, s0, l(0.000000)
mad r4.w, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.w, l(1.000000, 1.000000, 1.000000, 1.000000), r4.w
add r3.w, r3.w, r4.w
add r4.w, -r3.w, r3.z
ge r3.z, r3.z, r3.w
movc r3.z, r3.z, l(0), l(1.000000)
lt r3.w, l(0.000010), |r4.w|
movc r3.z, r3.w, r3.z, l(1.000000)
mul r11.xyzw, r10.xyzw, cb1[132].xyxy
mul r11.xyzw, r11.xyzw, cb1[135].xyxy
round_z r11.xyzw, r11.xyzw
ftoi r12.xy, r11.xyxx
ftoi r11.xy, r11.zwzz
mov r12.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r3.w, r12.xyzw, t2.xzwy
utof r3.w, r3.w
mul r3.z, r3.w, r3.z
mul r3.z, r1.y, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r8.xyxx, t1.yzwx, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r4.w, r8.xyxx, t0.yzwx, s0, l(0.000000)
mad r5.w, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
add r3.w, r3.w, r5.w
mad r5.w, r4.w, cb1[71].z, -cb1[71].w
mad r4.w, r4.w, cb1[71].x, cb1[71].y
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
add r4.w, r4.w, r5.w
add r5.w, r3.w, -r4.w
ge r3.w, r3.w, r4.w
movc r3.w, r3.w, l(0), l(1.000000)
lt r4.w, l(0.000010), |r5.w|
movc r3.w, r4.w, r3.w, l(1.000000)
mov r9.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r4.w, r9.xyzw, t2.xzwy
utof r4.w, r4.w
mul r3.w, r3.w, r4.w
mul r3.w, r1.y, r3.w
max r3.z, r3.w, r3.z
max r1.x, r1.x, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.z, r10.zwzz, t1.yzxw, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t0.yzwx, s0, l(0.000000)
mad r4.w, r3.z, cb1[71].z, -cb1[71].w
mad r3.z, r3.z, cb1[71].x, cb1[71].y
div r4.w, l(1.000000, 1.000000, 1.000000, 1.000000), r4.w
add r3.z, r3.z, r4.w
mad r4.w, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.w, l(1.000000, 1.000000, 1.000000, 1.000000), r4.w
add r3.w, r3.w, r4.w
add r4.w, -r3.w, r3.z
ge r3.z, r3.z, r3.w
movc r3.z, r3.z, l(0), l(1.000000)
lt r3.w, l(0.000010), |r4.w|
movc r3.z, r3.w, r3.z, l(1.000000)
mov r11.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r3.w, r11.xyzw, t2.xzwy
utof r3.w, r3.w
mul r3.z, r3.w, r3.z
mul r3.z, r1.y, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t1.yzwx, s0, l(0.000000)
mad r4.w, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r4.w, l(1.000000, 1.000000, 1.000000, 1.000000), r4.w
add r3.w, r3.w, r4.w
sample_l_indexable(texture2d)(float,float,float,float) r4.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
mad r5.w, r4.w, cb1[71].z, -cb1[71].w
mad r4.w, r4.w, cb1[71].x, cb1[71].y
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
add r4.w, r4.w, r5.w
add r5.w, r3.w, -r4.w
ge r3.w, r3.w, r4.w
movc r3.w, r3.w, l(0), l(1.000000)
lt r4.w, l(0.000010), |r5.w|
movc r3.w, r4.w, r3.w, l(1.000000)
mul r8.xyzw, r6.xyzw, cb1[132].xyxy
mul r8.xyzw, r8.xyzw, cb1[135].xyxy
round_z r8.xyzw, r8.xyzw
ftoi r9.xy, r8.xyxx
ftoi r8.xy, r8.zwzz
mov r9.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r4.w, r9.xyzw, t2.xzwy
utof r4.w, r4.w
mul r3.w, r3.w, r4.w
mul r3.w, r1.y, r3.w
max r3.z, r3.w, r3.z
sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t1.yzwx, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r4.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
mad r5.w, r3.w, cb1[71].z, -cb1[71].w
mad r3.w, r3.w, cb1[71].x, cb1[71].y
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
add r3.w, r3.w, r5.w
mad r5.w, r4.w, cb1[71].z, -cb1[71].w
mad r4.w, r4.w, cb1[71].x, cb1[71].y
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
add r4.w, r4.w, r5.w
add r5.w, r3.w, -r4.w
ge r3.w, r3.w, r4.w
movc r3.w, r3.w, l(0), l(1.000000)
lt r4.w, l(0.000010), |r5.w|
movc r3.w, r4.w, r3.w, l(1.000000)
mov r8.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r4.w, r8.xyzw, t2.xzwy
utof r4.w, r4.w
mul r3.w, r3.w, r4.w
mul r3.w, r1.y, r3.w
sample_l_indexable(texture2d)(float,float,float,float) r4.w, r2.zwzz, t1.yzwx, s0, l(0.000000)
mad r5.w, r4.w, cb1[71].z, -cb1[71].w
mad r4.w, r4.w, cb1[71].x, cb1[71].y
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
add r4.w, r4.w, r5.w
sample_l_indexable(texture2d)(float,float,float,float) r5.w, r2.zwzz, t0.yzwx, s0, l(0.000000)
mul r2.zw, r2.zzzw, cb1[132].xxxy
mul r2.zw, r2.zzzw, cb1[135].xxxy
round_z r2.zw, r2.zzzw
ftoi r6.xy, r2.zwzz
mad r2.z, r5.w, cb1[71].z, -cb1[71].w
mad r2.w, r5.w, cb1[71].x, cb1[71].y
div r2.z, l(1.000000, 1.000000, 1.000000, 1.000000), r2.z
add r2.z, r2.z, r2.w
add r2.w, -r2.z, r4.w
ge r2.z, r4.w, r2.z
movc r2.z, r2.z, l(0), l(1.000000)
lt r2.w, l(0.000010), |r2.w|
movc r2.z, r2.w, r2.z, l(1.000000)
mov r6.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r2.w, r6.xyzw, t2.xzwy
utof r2.w, r2.w
mul r2.z, r2.w, r2.z
mul r1.y, r1.y, r2.z
max r1.y, r1.y, r3.w
max r1.y, r1.y, r3.z
max r1.x, r1.y, r1.x
add r1.x, r1.x, -cb2[12].y
lt r1.x, l(0.000010), |r1.x|
sample_indexable(texture2d)(float,float,float,float) r6.xyz, r2.yyyy, t5.xyzw, s3
sample_indexable(texture2d)(float,float,float,float) r2.yzw, r2.yyyy, t4.wxyz, s2
log r8.xyz, r6.xyzx
ge r6.xyz, l(0.000000, 0.000000, 0.000000, 0.000000), r6.xyzx
mul r8.xyz, r8.xyzx, cb2[12].zzzz
exp r8.xyz, r8.xyzx
movc r6.xyz, r6.xyzx, l(0,0,0,0), r8.xyzx
mul r6.xyz, r6.xyzx, cb2[14].xyzx
mul r6.xyz, r6.xyzx, cb2[14].wwww
movc r6.xyz, r1.xxxx, l(0,0,0,0), r6.xyzx
add r1.x, r6.y, r6.x
add r1.x, r6.z, r1.x
lt r1.x, l(0.000010), |r1.x|
mad r8.xyz, cb1[136].wwww, r5.xyzx, -r6.xyzx
mad r6.xyz, cb2[15].zzzz, r8.xyzx, r6.xyzx
and r6.xyz, r1.xxxx, r6.xyzx
mul r1.x, r1.z, cb2[17].x
mul r1.y, r1.z, cb2[10].x
mul r1.y, r1.y, cb2[10].w
mul r1.x, r1.x, cb2[17].w
add r1.z, r2.x, -cb2[12].y
add r2.x, r2.x, -cb2[1].y
lt r2.x, l(0.000010), |r2.x|
movc r1.y, r2.x, l(0), r1.y
lt r1.z, l(0.000010), |r1.z|
movc r1.x, r1.z, l(0), r1.x
mad r8.xyz, cb1[136].wwww, r5.xyzx, -r1.xxxx
mad r8.xyz, cb2[18].zzzz, r8.xyzx, r1.xxxx
mul r1.x, r1.x, l(3.000000)
lt r1.x, l(0.000010), |r1.x|
and r8.xyz, r8.xyzx, r1.xxxx
mad r6.xyz, r8.xyzx, cb2[18].wwww, r6.xyzx
add r4.xyz, r4.xyzx, r6.xyzx
mul r1.x, r0.y, l(0.000520833360)
max r1.x, r1.x, cb1[129].z
ge r1.z, r0.y, l(0.000000)
lt r0.y, l(0.000010), |r0.y|
and r1.x, r1.x, r1.z
and r0.x, r0.x, r1.z
and r6.w, r0.x, r0.y
and r6.x, r0.y, r1.x
mad r0.xy, r0.zwzz, cb0[38].zwzz, r6.xwxx
mad r0.xy, r0.xyxx, cb1[129].xyxx, cb1[128].xyxx
mul r0.xy, r0.xyxx, cb1[132].zwzz
max r0.xy, r0.xyxx, cb1[133].xyxx
min r0.xy, r0.xyxx, cb1[133].zwzz
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r0.xyxx, t1.xyzw, s0, l(0.000000)
mad r1.z, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.x, r1.z, r1.x
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r0.xyxx, t0.yzxw, s0, l(0.000000)
mul r0.xy, r0.xyxx, cb1[132].xyxx
mul r0.xy, r0.xyxx, cb1[135].xyxx
round_z r0.xy, r0.xyxx
ftoi r8.xy, r0.xyxx
mad r0.x, r1.z, cb1[71].z, -cb1[71].w
mad r0.y, r1.z, cb1[71].x, cb1[71].y
div r0.x, l(1.000000, 1.000000, 1.000000, 1.000000), r0.x
add r0.x, r0.x, r0.y
add r0.y, -r0.x, r1.x
ge r0.x, r1.x, r0.x
movc r0.x, r0.x, l(0), l(1.000000)
lt r0.y, l(0.000010), |r0.y|
movc r0.x, r0.y, r0.x, l(1.000000)
mov r8.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r0.y, r8.xyzw, t2.xyzw
utof r0.y, r0.y
mul r0.x, r0.y, r0.x
mul r0.x, r1.w, r0.x
mov r6.y, -r6.w
mov r6.z, l(0)
mad r8.xyzw, r0.zwzw, cb0[38].zwzw, r6.xyxz
mad r9.xyzw, r0.zwzw, cb0[38].zwzw, r6.zyzw
mad r0.yz, r6.xxyx, l(0.000000, -1.000000, 1.000000, 0.000000), r3.xxyx
mad r3.xyzw, r6.xwxz, l(-1.000000, 1.000000, -1.000000, 1.000000), r3.xyxy
mad r3.xyzw, r3.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r3.xyzw, r3.xyzw, cb1[132].zwzw
max r3.xyzw, r3.xyzw, cb1[133].xyxy
min r3.xyzw, r3.xyzw, cb1[133].zwzw
mad r0.yz, r0.yyzy, cb1[129].xxyx, cb1[128].xxyx
mul r0.yz, r0.yyzy, cb1[132].zzwz
max r0.yz, r0.yyzy, cb1[133].xxyx
min r0.yz, r0.yyzy, cb1[133].zzwz
mad r6.xyzw, r9.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r6.xyzw, r6.xyzw, cb1[132].zwzw
max r6.xyzw, r6.xyzw, cb1[133].xyxy
min r6.xyzw, r6.xyzw, cb1[133].zwzw
mad r8.xyzw, r8.xyzw, cb1[129].xyxy, cb1[128].xyxy
mul r8.xyzw, r8.xyzw, cb1[132].zwzw
max r8.xyzw, r8.xyzw, cb1[133].xyxy
min r8.xyzw, r8.xyzw, cb1[133].zwzw
sample_l_indexable(texture2d)(float,float,float,float) r0.w, r8.zwzz, t1.yzwx, s0, l(0.000000)
mad r1.x, r0.w, cb1[71].z, -cb1[71].w
mad r0.w, r0.w, cb1[71].x, cb1[71].y
div r1.x, l(1.000000, 1.000000, 1.000000, 1.000000), r1.x
add r0.w, r0.w, r1.x
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
mad r1.z, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.x, r1.z, r1.x
add r1.z, r0.w, -r1.x
ge r0.w, r0.w, r1.x
movc r0.w, r0.w, l(0), l(1.000000)
lt r1.x, l(0.000010), |r1.z|
movc r0.w, r1.x, r0.w, l(1.000000)
mul r9.xyzw, r8.xyzw, cb1[132].xyxy
mul r9.xyzw, r9.xyzw, cb1[135].xyxy
round_z r9.xyzw, r9.xyzw
ftoi r10.xy, r9.zwzz
ftoi r9.xy, r9.xyxx
mov r10.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.x, r10.xyzw, t2.yxzw
utof r1.x, r1.x
mul r0.w, r0.w, r1.x
mul r0.w, r1.w, r0.w
max r0.x, r0.x, r0.w
sample_l_indexable(texture2d)(float,float,float,float) r0.w, r8.xyxx, t1.yzwx, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
mad r1.z, r0.w, cb1[71].z, -cb1[71].w
mad r0.w, r0.w, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r0.w, r0.w, r1.z
mad r1.z, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.x, r1.z, r1.x
add r1.z, r0.w, -r1.x
ge r0.w, r0.w, r1.x
movc r0.w, r0.w, l(0), l(1.000000)
lt r1.x, l(0.000010), |r1.z|
movc r0.w, r1.x, r0.w, l(1.000000)
mov r9.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.x, r9.xyzw, t2.yxzw
utof r1.x, r1.x
mul r0.w, r0.w, r1.x
mul r0.w, r1.w, r0.w
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r6.xyxx, t1.xyzw, s0, l(0.000000)
mad r1.z, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.x, r1.z, r1.x
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r6.xyxx, t0.yzxw, s0, l(0.000000)
mad r2.x, r1.z, cb1[71].z, -cb1[71].w
mad r1.z, r1.z, cb1[71].x, cb1[71].y
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
add r1.z, r1.z, r2.x
add r2.x, -r1.z, r1.x
ge r1.x, r1.x, r1.z
movc r1.x, r1.x, l(0), l(1.000000)
lt r1.z, l(0.000010), |r2.x|
movc r1.x, r1.z, r1.x, l(1.000000)
mul r8.xyzw, r6.xyzw, cb1[132].xyxy
mul r8.xyzw, r8.xyzw, cb1[135].xyxy
round_z r8.xyzw, r8.xyzw
ftoi r9.xy, r8.xyxx
ftoi r8.xy, r8.zwzz
mov r9.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.z, r9.xyzw, t2.xzyw
utof r1.z, r1.z
mul r1.x, r1.z, r1.x
mul r1.x, r1.w, r1.x
max r0.w, r0.w, r1.x
max r0.x, r0.x, r0.w
sample_l_indexable(texture2d)(float,float,float,float) r0.w, r6.zwzz, t1.yzwx, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r6.zwzz, t0.xyzw, s0, l(0.000000)
mad r1.z, r0.w, cb1[71].z, -cb1[71].w
mad r0.w, r0.w, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r0.w, r0.w, r1.z
mad r1.z, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.x, r1.z, r1.x
add r1.z, r0.w, -r1.x
ge r0.w, r0.w, r1.x
movc r0.w, r0.w, l(0), l(1.000000)
lt r1.x, l(0.000010), |r1.z|
movc r0.w, r1.x, r0.w, l(1.000000)
mov r8.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.x, r8.xyzw, t2.yxzw
utof r1.x, r1.x
mul r0.w, r0.w, r1.x
mul r0.w, r1.w, r0.w
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r3.xyxx, t1.xyzw, s0, l(0.000000)
mad r1.z, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.x, r1.z, r1.x
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r3.xyxx, t0.yzxw, s0, l(0.000000)
mad r2.x, r1.z, cb1[71].z, -cb1[71].w
mad r1.z, r1.z, cb1[71].x, cb1[71].y
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
add r1.z, r1.z, r2.x
add r2.x, -r1.z, r1.x
ge r1.x, r1.x, r1.z
movc r1.x, r1.x, l(0), l(1.000000)
lt r1.z, l(0.000010), |r2.x|
movc r1.x, r1.z, r1.x, l(1.000000)
mul r6.xyzw, r3.xyzw, cb1[132].xyxy
mul r6.xyzw, r6.xyzw, cb1[135].xyxy
round_z r6.xyzw, r6.xyzw
ftoi r8.xy, r6.xyxx
ftoi r6.xy, r6.zwzz
mov r8.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.z, r8.xyzw, t2.xzyw
utof r1.z, r1.z
mul r1.x, r1.z, r1.x
mul r1.x, r1.w, r1.x
max r0.w, r0.w, r1.x
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r3.zwzz, t1.xyzw, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r3.zwzz, t0.yzxw, s0, l(0.000000)
mad r2.x, r1.x, cb1[71].z, -cb1[71].w
mad r1.x, r1.x, cb1[71].x, cb1[71].y
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
add r1.x, r1.x, r2.x
mad r2.x, r1.z, cb1[71].z, -cb1[71].w
mad r1.z, r1.z, cb1[71].x, cb1[71].y
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
add r1.z, r1.z, r2.x
add r2.x, -r1.z, r1.x
ge r1.x, r1.x, r1.z
movc r1.x, r1.x, l(0), l(1.000000)
lt r1.z, l(0.000010), |r2.x|
movc r1.x, r1.z, r1.x, l(1.000000)
mov r6.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r1.z, r6.xyzw, t2.xzyw
utof r1.z, r1.z
mul r1.x, r1.z, r1.x
mul r1.x, r1.w, r1.x
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r0.yzyy, t1.yzxw, s0, l(0.000000)
mad r2.x, r1.z, cb1[71].z, -cb1[71].w
mad r1.z, r1.z, cb1[71].x, cb1[71].y
div r2.x, l(1.000000, 1.000000, 1.000000, 1.000000), r2.x
add r1.z, r1.z, r2.x
sample_l_indexable(texture2d)(float,float,float,float) r2.x, r0.yzyy, t0.xyzw, s0, l(0.000000)
mul r0.yz, r0.yyzy, cb1[132].xxyx
mul r0.yz, r0.yyzy, cb1[135].xxyx
round_z r0.yz, r0.yyzy
ftoi r3.xy, r0.yzyy
mad r0.y, r2.x, cb1[71].z, -cb1[71].w
mad r0.z, r2.x, cb1[71].x, cb1[71].y
div r0.y, l(1.000000, 1.000000, 1.000000, 1.000000), r0.y
add r0.y, r0.y, r0.z
add r0.z, -r0.y, r1.z
ge r0.y, r1.z, r0.y
movc r0.y, r0.y, l(0), l(1.000000)
lt r0.z, l(0.000010), |r0.z|
movc r0.y, r0.z, r0.y, l(1.000000)
mov r3.zw, l(0,0,0,0)
ld_indexable(texture2d)(uint,uint,uint,uint) r0.z, r3.xyzw, t2.xzyw
utof r0.z, r0.z
mul r0.y, r0.z, r0.y
mul r0.y, r1.w, r0.y
max r0.y, r0.y, r1.x
max r0.y, r0.y, r0.w
max r0.x, r0.y, r0.x
add r0.x, r0.x, -cb2[1].y
lt r0.x, l(0.000010), |r0.x|
log r0.yzw, r2.yyzw
ge r1.xzw, l(0.000000, 0.000000, 0.000000, 0.000000), r2.yyzw
mul r0.yzw, r0.yyzw, cb2[5].zzzz
exp r0.yzw, r0.yyzw
movc r0.yzw, r1.xxzw, l(0,0,0,0), r0.yyzw
mul r0.yzw, r0.yyzw, cb2[7].xxyz
mul r0.yzw, r0.yyzw, cb2[7].wwww
movc r0.xyz, r0.xxxx, l(0,0,0,0), r0.yzwy
add r0.w, r0.y, r0.x
add r0.w, r0.z, r0.w
lt r0.w, l(0.000010), |r0.w|
mad r1.xzw, cb1[136].wwww, r5.xxyz, -r0.xxyz
mad r0.xyz, cb2[8].zzzz, r1.xzwx, r0.xyzx
and r0.xyz, r0.xyzx, r0.wwww
mad r1.xzw, cb1[136].wwww, r5.xxyz, -r1.yyyy
mad r1.xzw, cb2[11].zzzz, r1.xxzw, r1.yyyy
mul r0.w, r1.y, l(3.000000)
lt r0.w, l(0.000010), |r0.w|
and r1.xyz, r1.xzwx, r0.wwww
mad r0.xyz, r1.xyzx, cb2[11].wwww, r0.xyzx
add r0.xyz, r4.xyzx, r0.xyzx
add r0.w, r0.y, r0.x
add r0.w, r0.z, r0.w
lt r0.w, l(0.000010), |r0.w|
movc r0.xyz, r0.wwww, r0.xyzx, r7.xyzx
add r1.xyz, -r0.xyzx, cb2[27].xyzx
mad r0.xyz, cb2[26].yyyy, r1.xyzx, r0.xyzx
max r0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
mul o0.xyz, r0.xyzx, cb1[136].zzzz
mov o0.w, l(0)
ret
// Approximately 0 instruction slots used

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
