//
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
//
//
// Buffer Definitions: 
//
// cbuffer _Globals
// {
//
//   float CASContrast;                 // Offset:    0 Size:     4
//   float MaxDelta;                    // Offset:    4 Size:     4
//   float Sharpening;                  // Offset:    8 Size:     4
//   float Contrast;                    // Offset:   12 Size:     4
//   float Brightness;                  // Offset:   16 Size:     4
//   float Saturation;                  // Offset:   20 Size:     4
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim      HLSL Bind  Count
// ------------------------------ ---------- ------- ----------- -------------- ------
// __s0                              sampler      NA          NA             s0      1 
// __srgbV__TexColor                 texture  float4          2d             t5      1 
// _Globals                          cbuffer      NA          NA            cb0      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   xyz         0   TARGET   float   xyz 
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[2], immediateIndexed
dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t5
dcl_input_ps linear v1.xy
dcl_output o0.xyz
dcl_temps 12
ne r0.x, cb0[0].z, l(0.000000)
if_nz r0.x
  sample_aoffimmi_indexable(-1,-1,0)(texture2d)(float,float,float,float) r0.xyz, v1.xyxx, t5.xyzw, s0
  sample_aoffimmi_indexable(0,-1,0)(texture2d)(float,float,float,float) r1.xyz, v1.xyxx, t5.xyzw, s0
  sample_aoffimmi_indexable(1,-1,0)(texture2d)(float,float,float,float) r2.xyz, v1.xyxx, t5.xyzw, s0
  sample_aoffimmi_indexable(-1,0,0)(texture2d)(float,float,float,float) r3.xyz, v1.xyxx, t5.xyzw, s0
  sample_aoffimmi_indexable(-1,1,0)(texture2d)(float,float,float,float) r4.xyz, v1.xyxx, t5.xyzw, s0
  gather4_indexable(texture2d)(float,float,float,float) r5.xyzw, v1.xyxx, t5.xyzw, s0.x
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, v1.xyxx, t5.xyzw, s0.y
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, v1.xyxx, t5.xzyw, s0.z
  mov r8.x, r5.w
  mov r8.y, r6.w
  mov r8.z, r7.w
  min r9.xyz, r3.xyzx, r8.xyzx
  mov r10.x, r5.z
  mov r10.y, r6.z
  mov r10.z, r7.y
  min r11.xyz, r1.xyzx, r10.xyzx
  min r9.xyz, r9.xyzx, r11.xyzx
  mov r11.x, r5.x
  mov r11.y, r6.x
  mov r11.z, r7.x
  min r5.xzw, r9.xxyz, r11.xxyz
  min r6.xzw, r0.xxyz, r2.xxyz
  mov r7.x, r5.y
  mov r7.y, r6.y
  min r9.xyz, r4.xyzx, r7.xyzx
  min r6.xyz, r6.xzwx, r9.xyzx
  min r6.xyz, r5.xzwx, r6.xyzx
  add r5.xyz, r5.xzwx, r6.xyzx
  max r6.xyz, r3.xyzx, r8.xyzx
  max r9.xyz, r1.xyzx, r10.xyzx
  max r6.xyz, r6.xyzx, r9.xyzx
  max r6.xyz, r11.xyzx, r6.xyzx
  max r0.xyz, r0.xyzx, r2.xyzx
  max r2.xyz, r4.xyzx, r7.xyzx
  max r0.xyz, r0.xyzx, r2.xyzx
  max r0.xyz, r0.xyzx, r6.xyzx
  add r0.xyz, r0.xyzx, r6.xyzx
  rcp r2.xyz, r0.xyzx
  add r0.xyz, -r0.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000)
  min r0.xyz, r0.xyzx, r5.xyzx
  mul_sat r0.xyz, r2.xyzx, r0.xyzx
  rsq r0.xyz, r0.xyzx
  mad r0.w, cb0[0].x, l(-3.000000), l(8.000000)
  mul r0.xyz, r0.wwww, r0.xyzx
  rcp r0.xyz, r0.xyzx
  mad r2.xyz, r0.xyzx, l(-4.000000, -4.000000, -4.000000, 0.000000), l(1.000000, 1.000000, 1.000000, 0.000000)
  rcp r2.xyz, r2.xyzx
  add r1.xyz, r1.xyzx, r3.xyzx
  add r3.xyz, r10.xyzx, r11.xyzx
  add r1.xyz, r1.xyzx, r3.xyzx
  mad r0.xyz, r1.xyzx, -r0.xyzx, r8.xyzx
  mul_sat r0.xyz, r2.xyzx, r0.xyzx
  add r0.xyz, -r8.xyzx, r0.xyzx
  max r0.xyz, r0.xyzx, -cb0[0].yyyy
  min r0.xyz, r0.xyzx, cb0[0].yyyy
  mad r0.xyz, cb0[0].zzzz, r0.xyzx, r8.xyzx
else 
  sample_indexable(texture2d)(float,float,float,float) r0.xyz, v1.xyxx, t5.xyzw, s0
endif 
add r0.xyz, r0.xyzx, l(-0.500000, -0.500000, -0.500000, 0.000000)
mad r0.xyz, cb0[0].wwww, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000)
add r0.w, cb0[1].x, l(-1.000000)
add r0.xyz, r0.wwww, r0.xyzx
ne r0.w, cb0[1].y, l(1.000000)
dp3 r1.x, l(0.212500, 0.715400, 0.072100, 0.000000), r0.xyzx
add r1.yzw, r0.xxyz, -r1.xxxx
mad r1.xyz, cb0[1].yyyy, r1.yzwy, r1.xxxx
movc o0.xyz, r0.wwww, r1.xyzx, r0.xyzx
ret 
// Approximately 71 instruction slots used
