// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
//
//   using 3Dmigoto v0.6.198 on Mon Oct 19 19:39:11 2026
//
//
// Buffer Definitions:
//
// cbuffer cb0
// {
//
//   float4 cb0[143];                   // Index:    0-142            Components:   572
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// s0_s                              sampler      NA          NA    0        1
// t0                                texture  float4          2d    0        1
// t1                                texture  float4          2d    1        1
// t2                                texture  float4          2d    2        1
// cb0                               cbuffer      NA          NA    0        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float
// TEXCOORD                 0   xy          1     NONE   float   xy
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_4_0
dcl_constantbuffer CB0[134], immediateIndexed
dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_resource_texture2d (float,float,float,float) t2
dcl_input_ps linear v1.xy
dcl_output o0.xyzw
dcl_temps 5
sample_b r0.xyzw, v1.xyxx, t0.xyzw, s0, cb0[5].x
mul_sat r0.xyz, r0.xyzx, cb0[132].wwww
lt r0.w, l(0.000000), cb0[133].w
if_nz r0.w
  log r1.xyz, r0.xyzx
  mul r1.xyz, r1.xyzx, l(0.416666657, 0.416666657, 0.416666657, 0.000000)
  exp r1.xyz, r1.xyzx
  mad r1.xyz, r1.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  mul r2.xyz, r1.zxyz, cb0[133].zzzz
  round_ni r0.w, r2.x
  mul r2.xw, cb0[133].xxxy, l(0.500000, 0.000000, 0.000000, 0.500000)
  mad r2.yz, r2.yyzy, cb0[133].xxyx, r2.xxwx
  mad r2.x, r0.w, cb0[133].y, r2.y
  sample_l r3.xyzw, r2.xzxx, t2.xyzw, s0, l(0.000000)
  mov r4.x, cb0[133].y
  mov r4.y, l(0)
  add r2.xy, r2.xzxx, r4.xyxx
  sample_l r2.xyzw, r2.xyxx, t2.xyzw, s0, l(0.000000)
  mad r0.w, cb0[133].z, r1.z, -r0.w
  add r2.xyz, -r3.xyzx, r2.xyzx
  mad r2.xyz, r0.wwww, r2.xyzx, r3.xyzx
  add r2.xyz, -r1.xyzx, r2.xyzx
  mad r1.xyz, cb0[133].wwww, r2.xyzx, r1.xyzx
  mad r2.xyz, r1.xyzx, l(0.305306017, 0.305306017, 0.305306017, 0.000000), l(0.682171106, 0.682171106, 0.682171106, 0.000000)
  mad r2.xyz, r1.xyzx, r2.xyzx, l(0.0125228781, 0.0125228781, 0.0125228781, 0.000000)
  mul r0.xyz, r1.xyzx, r2.xyzx
endif
mul r0.xyw, r0.xyxz, cb0[132].zzzz
round_ni r0.w, r0.w
mul r1.xy, cb0[132].xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mad r1.yz, r0.xxyx, cb0[132].xxyx, r1.xxyx
mad r1.x, r0.w, cb0[132].y, r1.y
sample_l r2.xyzw, r1.xzxx, t1.xyzw, s0, l(0.000000)
mov r0.x, cb0[132].y
mov r0.y, l(0)
add r0.xy, r0.xyxx, r1.xzxx
sample_l r1.xyzw, r0.xyxx, t1.xyzw, s0, l(0.000000)
mad r0.x, cb0[132].z, r0.z, -r0.w
add r0.yzw, -r2.xxyz, r1.xxyz
mad o0.xyz, r0.xxxx, r0.yzwy, r2.xyzx
mov o0.w, l(1.000000)
ret
// Approximately 43 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with geo-11 v0.6.198 on Mon Oct 19 19:39:11 2026
//
// cbuffer cb0 : register(b0)
// {
//   float4 cb0[143] : packoffset(c0);
// }
//
// SamplerState s0_s_s : register(s0);
// Texture2D<float4> t0 : register(t0);
// Texture2D<float4> t1 : register(t1);
// Texture2D<float4> t2 : register(t2);
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Buffer<float4> StereoParams : register(t125);
//
//
// void main(
//   float4 v0 : SV_POSITION0,
//   float2 v1 : TEXCOORD0,
//   out float4 o0 : SV_Target0)
// {
//   float4 r0,r1,r2,r3,r4;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
//   r0.xyzw = t0.SampleBias(s0_s_s, v1.xy, cb0[5].x).xyzw;
//   r0.xyz = saturate(cb0[132].www * r0.xyz);
//   r0.w = cmp(0 < cb0[133].w);
//   if (r0.w != 0) {
//     r1.xyz = log2(r0.xyz);
//     r1.xyz = float3(0.416666657,0.416666657,0.416666657) * r1.xyz;
//     r1.xyz = exp2(r1.xyz);
//     r1.xyz = r1.xyz * float3(1.05499995,1.05499995,1.05499995) + float3(-0.0549999997,-0.0549999997,-0.0549999997);
//     r1.xyz = max(float3(0,0,0), r1.xyz);
//     r2.xyz = cb0[133].zzz * r1.zxy;
//     r0.w = floor(r2.x);
//     r2.xw = float2(0.5,0.5) * cb0[133].xy;
//     r2.yz = r2.yz * cb0[133].xy + r2.xw;
//     r2.x = r0.w * cb0[133].y + r2.y;
//     r3.xyzw = t2.SampleLevel(s0_s_s, r2.xz, 0).xyzw;
//     r4.x = cb0[133].y;
//     r4.y = 0;
//     r2.xy = r4.xy + r2.xz;
//     r2.xyzw = t2.SampleLevel(s0_s_s, r2.xy, 0).xyzw;
//     r0.w = cb0[133].z * r1.z + -r0.w;
//     r2.xyz = r2.xyz + -r3.xyz;
//     r2.xyz = r0.www * r2.xyz + r3.xyz;
//     r2.xyz = r2.xyz + -r1.xyz;
//     r1.xyz = cb0[133].www * r2.xyz + r1.xyz;
//     r2.xyz = r1.xyz * float3(0.305306017,0.305306017,0.305306017) + float3(0.682171106,0.682171106,0.682171106);
//     r2.xyz = r1.xyz * r2.xyz + float3(0.0125228781,0.0125228781,0.0125228781);
//     r0.xyz = r2.xyz * r1.xyz;
//   }
//   r0.xyw = cb0[132].zzz * r0.xyz;
//   r0.w = floor(r0.w);
//   r1.xy = float2(0.5,0.5) * cb0[132].xy;
//   r1.yz = r0.xy * cb0[132].xy + r1.xy;
//   r1.x = r0.w * cb0[132].y + r1.y;
//   r2.xyzw = t1.SampleLevel(s0_s_s, r1.xz, 0).xyzw;
//   r0.x = cb0[132].y;
//   r0.y = 0;
//   r0.xy = r1.xz + r0.xy;
//   r1.xyzw = t1.SampleLevel(s0_s_s, r0.xy, 0).xyzw;
//   r0.x = cb0[132].z * r0.z + -r0.w;
//   r0.yzw = r1.xyz + -r2.xyz;
//   o0.xyz = r0.xxx * r0.yzw + r2.xyz;
//   o0.w = 1;
//   return;
// }
/////////////////////////////////////////////////////////////////////////////
