// Skip Regex
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.11 on Sun Aug 12 09:50:29 2018
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                10   xyzw        0     NONE   float   xyz
// TEXCOORD                11   xyzw        1     NONE   float   xyzw
// TEXCOORD                 0   xyzw        2     NONE   float   xy
// TEXCOORD                 7   xyzw        3     NONE   float   xyzw
// SV_Position              0   xyzw        4      POS   float   xyzw
// SV_IsFrontFace           0   x           5    FFACE    uint   x
//
//
// 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[40], dynamicIndexed
dcl_constantbuffer cb1[178], immediateIndexed
dcl_constantbuffer cb2[17], immediateIndexed
dcl_constantbuffer cb3[6], immediateIndexed
dcl_constantbuffer cb4[7], immediateIndexed
dcl_constantbuffer cb5[2728], dynamicIndexed
dcl_constantbuffer cb6[21], 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_sampler s6, mode_default
dcl_sampler s7, mode_default
dcl_sampler s8, mode_default
dcl_sampler s9, mode_default
dcl_sampler s10, mode_default
dcl_sampler s11, mode_default
dcl_resource_texture3d (uint,uint,uint,uint) t0
dcl_resource_texture3d (float,float,float,float) t1
dcl_resource_texture3d (float,float,float,float) t2
dcl_resource_texture3d (float,float,float,float) t3
dcl_resource_texture3d (float,float,float,float) t4
dcl_resource_texture3d (float,float,float,float) t5
dcl_resource_texture3d (float,float,float,float) t6
dcl_resource_texture3d (float,float,float,float) t7
dcl_resource_texture3d (float,float,float,float) t8
dcl_resource_texture3d (float,float,float,float) t9
dcl_resource_texture3d (float,float,float,float) t10
dcl_resource_texture3d (float,float,float,float) t11
dcl_resource_texture3d (float,float,float,float) t12
dcl_resource_texture3d (float,float,float,float) t13
dcl_resource_texture2d (float,float,float,float) t14
dcl_resource_texture2d (float,float,float,float) t15
dcl_resource_texture2d (float,float,float,float) t16
dcl_resource_texture2d (float,float,float,float) t17
dcl_resource_texture2d (float,float,float,float) t18
dcl_resource_texture2d (float,float,float,float) t19
dcl_resource_texturecube (float,float,float,float) t20
dcl_resource_texture2d (float,float,float,float) t21
dcl_resource_texture2d (float,float,float,float) t22
dcl_resource_texture2d (float,float,float,float) t23
dcl_resource_buffer (uint,uint,uint,uint) t24
dcl_resource_buffer (uint,uint,uint,uint) t25
dcl_resource_buffer (uint,uint,uint,uint) t26
dcl_resource_texturecubearray (float,float,float,float) t27
dcl_input_ps linear centroid v0.xyz
dcl_input_ps linear centroid v1.xyzw
dcl_input_ps linear v2.xy
dcl_input_ps linear v3.xyzw
dcl_input_ps_siv linear noperspective v4.xyzw, position
dcl_input_ps_sgv v5.x, is_front_face
dcl_output o0.xyzw
dcl_temps 27
mul r0.xyz, v0.yzxy, v1.zxyz
mad r0.xyz, v1.yzxy, v0.zxyz, -r0.xyzx
mul r0.xyz, r0.xyzx, v1.wwww
add r1.xy, v4.xyxx, -cb1[117].xyxx
mad r1.zw, r1.xxxy, cb1[118].zzzw, l(0.000000, 0.000000, -0.500000, -0.500000)
mul r2.xy, r1.zwzz, v4.wwww
mov r2.z, v4.w
mul r2.xyw, r2.xyxz, l(2.000000, -2.000000, 0.000000, 1.000000)
mul r3.xyzw, v4.yyyy, cb1[37].xyzw
mad r3.xyzw, v4.xxxx, cb1[36].xyzw, r3.xyzw
mad r3.xyzw, v4.zzzz, cb1[38].xyzw, r3.xyzw
add r3.xyzw, r3.xyzw, cb1[39].xyzw
div r3.xyz, r3.xyzx, r3.wwww
add r4.xyz, r3.xyzx, -cb1[58].xyzx
dp3 r0.w, -r3.xyzx, -r3.xyzx
rsq r0.w, r0.w
mul r5.xyz, r0.wwww, -r3.xyzx
mul r0.w, cb1[126].w, cb2[9].w
movc r1.z, v5.x, l(1.000000), l(-1.000000)
mul r0.w, r0.w, r1.z
mul r6.xy, cb1[127].zzzz, cb6[13].xwxx
mul r6.z, cb1[127].z, cb6[14].x
add r7.xyz, r4.xyzx, cb6[2].xyzx
add r8.xyz, r7.xyzx, -cb1[162].xyzx
add r8.xyz, r8.xyzx, cb1[162].wwww
max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r9.xyz, cb1[162].wwww, cb1[162].xyzx
add r10.xyz, -r7.xyzx, r9.xyzx
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r8.xyz, r8.xyzx, r10.xyzx
min r1.z, r8.z, r8.y
min r1.z, r1.z, r8.x
mul r1.w, cb1[162].w, cb1[170].y
lt r1.z, r1.w, r1.z
if_nz r1.z
  mad r8.xyz, r7.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r1.z, r8.xyzx, t10.yzxw, s0, l(0.000000)
else
  add r8.xyz, r7.xyzx, -cb1[163].xyzx
  add r8.xyz, r8.xyzx, cb1[163].wwww
  max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r10.xyz, cb1[163].wwww, cb1[163].xyzx
  add r10.xyz, -r7.xyzx, r10.xyzx
  max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r8.xyz, r8.xyzx, r10.xyzx
  min r3.w, r8.z, r8.y
  min r3.w, r3.w, r8.x
  mul r5.w, cb1[163].w, cb1[170].y
  lt r3.w, r5.w, r3.w
  if_nz r3.w
    mad r8.xyz, r7.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r1.z, r8.xyzx, t11.yzxw, s0, l(0.000000)
  else
    add r8.xyz, r7.xyzx, -cb1[164].xyzx
    add r8.xyz, r8.xyzx, cb1[164].wwww
    max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r10.xyz, cb1[164].wwww, cb1[164].xyzx
    add r10.xyz, -r7.xyzx, r10.xyzx
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r8.xyz, r8.xyzx, r10.xyzx
    min r3.w, r8.z, r8.y
    min r3.w, r3.w, r8.x
    add r8.xyz, r7.xyzx, -cb1[165].xyzx
    add r8.xyz, r8.xyzx, cb1[165].wwww
    max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r10.xyz, cb1[165].wwww, cb1[165].xyzx
    add r10.xyz, -r7.xyzx, r10.xyzx
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r8.xyz, r8.xyzx, r10.xyzx
    min r5.w, r8.z, r8.y
    min r5.w, r5.w, r8.x
    mul r6.w, cb1[164].w, cb1[170].y
    lt r3.w, r6.w, r3.w
    if_nz r3.w
      mad r8.xyz, r7.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r1.z, r8.xyzx, t12.yzxw, s0, l(0.000000)
    else
      mul r3.w, cb1[165].w, cb1[170].y
      lt r3.w, r3.w, r5.w
      if_nz r3.w
        mul r3.w, r5.w, cb1[169].w
        mul_sat r3.w, r3.w, l(10.000000)
        mad r7.xyz, r7.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r5.w, r7.xyzx, t13.yzwx, s0, l(0.000000)
        add r5.w, r5.w, -cb1[170].z
        mad r1.z, r3.w, r5.w, cb1[170].z
      else
        mov r1.z, cb1[170].z
      endif
    endif
  endif
endif
add r7.xyz, r4.xyzx, -cb6[2].xyzx
add r8.xyz, r7.xyzx, -cb1[162].xyzx
add r8.xyz, r8.xyzx, cb1[162].wwww
max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r10.xyz, -r7.xyzx, r9.xyzx
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r8.xyz, r8.xyzx, r10.xyzx
min r3.w, r8.z, r8.y
min r3.w, r3.w, r8.x
lt r3.w, r1.w, r3.w
if_nz r3.w
  mad r8.xyz, r7.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r3.w, r8.xyzx, t10.yzwx, s0, l(0.000000)
else
  add r8.xyz, r7.xyzx, -cb1[163].xyzx
  add r8.xyz, r8.xyzx, cb1[163].wwww
  max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r10.xyz, cb1[163].wwww, cb1[163].xyzx
  add r10.xyz, -r7.xyzx, r10.xyzx
  max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r8.xyz, r8.xyzx, r10.xyzx
  min r5.w, r8.z, r8.y
  min r5.w, r5.w, r8.x
  mul r6.w, cb1[163].w, cb1[170].y
  lt r5.w, r6.w, r5.w
  if_nz r5.w
    mad r8.xyz, r7.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r3.w, r8.xyzx, t11.yzwx, s0, l(0.000000)
  else
    add r8.xyz, r7.xyzx, -cb1[164].xyzx
    add r8.xyz, r8.xyzx, cb1[164].wwww
    max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r10.xyz, cb1[164].wwww, cb1[164].xyzx
    add r10.xyz, -r7.xyzx, r10.xyzx
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r8.xyz, r8.xyzx, r10.xyzx
    min r5.w, r8.z, r8.y
    min r5.w, r5.w, r8.x
    add r8.xyz, r7.xyzx, -cb1[165].xyzx
    add r8.xyz, r8.xyzx, cb1[165].wwww
    max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r10.xyz, cb1[165].wwww, cb1[165].xyzx
    add r10.xyz, -r7.xyzx, r10.xyzx
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r8.xyz, r8.xyzx, r10.xyzx
    min r6.w, r8.z, r8.y
    min r6.w, r6.w, r8.x
    mul r7.w, cb1[164].w, cb1[170].y
    lt r5.w, r7.w, r5.w
    if_nz r5.w
      mad r8.xyz, r7.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r3.w, r8.xyzx, t12.yzwx, s0, l(0.000000)
    else
      mul r5.w, cb1[165].w, cb1[170].y
      lt r5.w, r5.w, r6.w
      if_nz r5.w
        mul r5.w, r6.w, cb1[169].w
        mul_sat r5.w, r5.w, l(10.000000)
        mad r7.xyz, r7.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r6.w, r7.xyzx, t13.yzwx, s0, l(0.000000)
        add r6.w, r6.w, -cb1[170].z
        mad r3.w, r5.w, r6.w, cb1[170].z
      else
        mov r3.w, cb1[170].z
      endif
    endif
  endif
endif
add r7.x, r1.z, -r3.w
add r8.xyz, r4.xyzx, cb6[3].xyzx
add r10.xyz, r8.xyzx, -cb1[162].xyzx
add r10.xyz, r10.xyzx, cb1[162].wwww
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r11.xyz, -r8.xyzx, r9.xyzx
max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r10.xyz, r10.xyzx, r11.xyzx
min r1.z, r10.z, r10.y
min r1.z, r1.z, r10.x
lt r1.z, r1.w, r1.z
if_nz r1.z
  mad r10.xyz, r8.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r1.z, r10.xyzx, t10.yzxw, s0, l(0.000000)
else
  add r10.xyz, r8.xyzx, -cb1[163].xyzx
  add r10.xyz, r10.xyzx, cb1[163].wwww
  max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r11.xyz, cb1[163].wwww, cb1[163].xyzx
  add r11.xyz, -r8.xyzx, r11.xyzx
  max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r10.xyz, r10.xyzx, r11.xyzx
  min r3.w, r10.z, r10.y
  min r3.w, r3.w, r10.x
  mul r5.w, cb1[163].w, cb1[170].y
  lt r3.w, r5.w, r3.w
  if_nz r3.w
    mad r10.xyz, r8.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r1.z, r10.xyzx, t11.yzxw, s0, l(0.000000)
  else
    add r10.xyz, r8.xyzx, -cb1[164].xyzx
    add r10.xyz, r10.xyzx, cb1[164].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[164].wwww, cb1[164].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r3.w, r10.z, r10.y
    min r3.w, r3.w, r10.x
    add r10.xyz, r8.xyzx, -cb1[165].xyzx
    add r10.xyz, r10.xyzx, cb1[165].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[165].wwww, cb1[165].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r5.w, r10.z, r10.y
    min r5.w, r5.w, r10.x
    mul r6.w, cb1[164].w, cb1[170].y
    lt r3.w, r6.w, r3.w
    if_nz r3.w
      mad r10.xyz, r8.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r1.z, r10.xyzx, t12.yzxw, s0, l(0.000000)
    else
      mul r3.w, cb1[165].w, cb1[170].y
      lt r3.w, r3.w, r5.w
      if_nz r3.w
        mul r3.w, r5.w, cb1[169].w
        mul_sat r3.w, r3.w, l(10.000000)
        mad r8.xyz, r8.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r5.w, r8.xyzx, t13.yzwx, s0, l(0.000000)
        add r5.w, r5.w, -cb1[170].z
        mad r1.z, r3.w, r5.w, cb1[170].z
      else
        mov r1.z, cb1[170].z
      endif
    endif
  endif
endif
add r8.xyz, r4.xyzx, -cb6[3].xyzx
add r10.xyz, r8.xyzx, -cb1[162].xyzx
add r10.xyz, r10.xyzx, cb1[162].wwww
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r11.xyz, -r8.xyzx, r9.xyzx
max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r10.xyz, r10.xyzx, r11.xyzx
min r3.w, r10.z, r10.y
min r3.w, r3.w, r10.x
lt r3.w, r1.w, r3.w
if_nz r3.w
  mad r10.xyz, r8.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r3.w, r10.xyzx, t10.yzwx, s0, l(0.000000)
else
  add r10.xyz, r8.xyzx, -cb1[163].xyzx
  add r10.xyz, r10.xyzx, cb1[163].wwww
  max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r11.xyz, cb1[163].wwww, cb1[163].xyzx
  add r11.xyz, -r8.xyzx, r11.xyzx
  max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r10.xyz, r10.xyzx, r11.xyzx
  min r5.w, r10.z, r10.y
  min r5.w, r5.w, r10.x
  mul r6.w, cb1[163].w, cb1[170].y
  lt r5.w, r6.w, r5.w
  if_nz r5.w
    mad r10.xyz, r8.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r3.w, r10.xyzx, t11.yzwx, s0, l(0.000000)
  else
    add r10.xyz, r8.xyzx, -cb1[164].xyzx
    add r10.xyz, r10.xyzx, cb1[164].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[164].wwww, cb1[164].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r5.w, r10.z, r10.y
    min r5.w, r5.w, r10.x
    add r10.xyz, r8.xyzx, -cb1[165].xyzx
    add r10.xyz, r10.xyzx, cb1[165].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[165].wwww, cb1[165].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r6.w, r10.z, r10.y
    min r6.w, r6.w, r10.x
    mul r7.w, cb1[164].w, cb1[170].y
    lt r5.w, r7.w, r5.w
    if_nz r5.w
      mad r10.xyz, r8.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r3.w, r10.xyzx, t12.yzwx, s0, l(0.000000)
    else
      mul r5.w, cb1[165].w, cb1[170].y
      lt r5.w, r5.w, r6.w
      if_nz r5.w
        mul r5.w, r6.w, cb1[169].w
        mul_sat r5.w, r5.w, l(10.000000)
        mad r8.xyz, r8.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r6.w, r8.xyzx, t13.yzwx, s0, l(0.000000)
        add r6.w, r6.w, -cb1[170].z
        mad r3.w, r5.w, r6.w, cb1[170].z
      else
        mov r3.w, cb1[170].z
      endif
    endif
  endif
endif
add r7.y, r1.z, -r3.w
add r8.xyz, r4.xyzx, cb6[4].xyzx
add r10.xyz, r8.xyzx, -cb1[162].xyzx
add r10.xyz, r10.xyzx, cb1[162].wwww
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r11.xyz, -r8.xyzx, r9.xyzx
max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r10.xyz, r10.xyzx, r11.xyzx
min r1.z, r10.z, r10.y
min r1.z, r1.z, r10.x
lt r1.z, r1.w, r1.z
if_nz r1.z
  mad r10.xyz, r8.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r1.z, r10.xyzx, t10.yzxw, s0, l(0.000000)
else
  add r10.xyz, r8.xyzx, -cb1[163].xyzx
  add r10.xyz, r10.xyzx, cb1[163].wwww
  max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r11.xyz, cb1[163].wwww, cb1[163].xyzx
  add r11.xyz, -r8.xyzx, r11.xyzx
  max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r10.xyz, r10.xyzx, r11.xyzx
  min r3.w, r10.z, r10.y
  min r3.w, r3.w, r10.x
  mul r5.w, cb1[163].w, cb1[170].y
  lt r3.w, r5.w, r3.w
  if_nz r3.w
    mad r10.xyz, r8.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r1.z, r10.xyzx, t11.yzxw, s0, l(0.000000)
  else
    add r10.xyz, r8.xyzx, -cb1[164].xyzx
    add r10.xyz, r10.xyzx, cb1[164].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[164].wwww, cb1[164].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r3.w, r10.z, r10.y
    min r3.w, r3.w, r10.x
    add r10.xyz, r8.xyzx, -cb1[165].xyzx
    add r10.xyz, r10.xyzx, cb1[165].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[165].wwww, cb1[165].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r5.w, r10.z, r10.y
    min r5.w, r5.w, r10.x
    mul r6.w, cb1[164].w, cb1[170].y
    lt r3.w, r6.w, r3.w
    if_nz r3.w
      mad r10.xyz, r8.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r1.z, r10.xyzx, t12.yzxw, s0, l(0.000000)
    else
      mul r3.w, cb1[165].w, cb1[170].y
      lt r3.w, r3.w, r5.w
      if_nz r3.w
        mul r3.w, r5.w, cb1[169].w
        mul_sat r3.w, r3.w, l(10.000000)
        mad r8.xyz, r8.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r5.w, r8.xyzx, t13.yzwx, s0, l(0.000000)
        add r5.w, r5.w, -cb1[170].z
        mad r1.z, r3.w, r5.w, cb1[170].z
      else
        mov r1.z, cb1[170].z
      endif
    endif
  endif
endif
add r8.xyz, r4.xyzx, -cb6[4].xyzx
add r10.xyz, r8.xyzx, -cb1[162].xyzx
add r10.xyz, r10.xyzx, cb1[162].wwww
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r11.xyz, -r8.xyzx, r9.xyzx
max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r10.xyz, r10.xyzx, r11.xyzx
min r3.w, r10.z, r10.y
min r3.w, r3.w, r10.x
lt r3.w, r1.w, r3.w
if_nz r3.w
  mad r10.xyz, r8.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r3.w, r10.xyzx, t10.yzwx, s0, l(0.000000)
else
  add r10.xyz, r8.xyzx, -cb1[163].xyzx
  add r10.xyz, r10.xyzx, cb1[163].wwww
  max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r11.xyz, cb1[163].wwww, cb1[163].xyzx
  add r11.xyz, -r8.xyzx, r11.xyzx
  max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r10.xyz, r10.xyzx, r11.xyzx
  min r5.w, r10.z, r10.y
  min r5.w, r5.w, r10.x
  mul r6.w, cb1[163].w, cb1[170].y
  lt r5.w, r6.w, r5.w
  if_nz r5.w
    mad r10.xyz, r8.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r3.w, r10.xyzx, t11.yzwx, s0, l(0.000000)
  else
    add r10.xyz, r8.xyzx, -cb1[164].xyzx
    add r10.xyz, r10.xyzx, cb1[164].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[164].wwww, cb1[164].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r5.w, r10.z, r10.y
    min r5.w, r5.w, r10.x
    add r10.xyz, r8.xyzx, -cb1[165].xyzx
    add r10.xyz, r10.xyzx, cb1[165].wwww
    max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r11.xyz, cb1[165].wwww, cb1[165].xyzx
    add r11.xyz, -r8.xyzx, r11.xyzx
    max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r10.xyz, r10.xyzx, r11.xyzx
    min r6.w, r10.z, r10.y
    min r6.w, r6.w, r10.x
    mul r7.w, cb1[164].w, cb1[170].y
    lt r5.w, r7.w, r5.w
    if_nz r5.w
      mad r10.xyz, r8.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r3.w, r10.xyzx, t12.yzwx, s0, l(0.000000)
    else
      mul r5.w, cb1[165].w, cb1[170].y
      lt r5.w, r5.w, r6.w
      if_nz r5.w
        mul r5.w, r6.w, cb1[169].w
        mul_sat r5.w, r5.w, l(10.000000)
        mad r8.xyz, r8.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r6.w, r8.xyzx, t13.yzwx, s0, l(0.000000)
        add r6.w, r6.w, -cb1[170].z
        mad r3.w, r5.w, r6.w, cb1[170].z
      else
        mov r3.w, cb1[170].z
      endif
    endif
  endif
endif
add r7.z, r1.z, -r3.w
dp3 r1.z, r7.xyzx, r7.xyzx
sqrt r1.z, r1.z
div r7.xy, r7.xyxx, r1.zzzz
mul r7.zw, r7.xxxy, cb6[14].zzzz
mad r7.xy, r7.xyxx, cb6[14].zzzz, l(1.000000, 1.000000, 0.000000, 0.000000)
mul_sat r7.xy, r7.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mad r7.xy, v2.xyxx, cb6[14].wwww, r7.xyxx
add r8.xyzw, r6.yzyz, r7.xyxy
mad r10.xyzw, r6.xxxx, l(0.100000, 0.100000, -0.100000, -0.100000), r8.zwzw
sample_indexable(texture2d)(float,float,float,float) r10.xy, r10.xyxx, t14.xyzw, s2
mad r11.xy, r10.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r1.z, r11.xyxx, r11.xyxx
add r1.z, -r1.z, l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r11.z, r1.z
add r10.xy, r10.zwzz, l(0.418100, 0.354800, 0.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r10.xy, r10.xyxx, t14.xyzw, s2
mad r10.xy, r10.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r1.z, r10.xyxx, r10.xyxx
add r1.z, -r1.z, l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r10.z, r1.z
add r10.xyz, r10.xyzx, r11.xyzx
mad r8.xyzw, r6.xxxx, l(-0.100000, 0.100000, 0.100000, -0.100000), r8.xyzw
add r8.xyzw, r8.xyzw, l(0.864861, 0.148384, 0.651340, 0.751638)
sample_indexable(texture2d)(float,float,float,float) r6.xw, r8.xyxx, t14.xzwy, s2
mad r11.xy, r6.xwxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r1.z, r11.xyxx, r11.xyxx
add r1.z, -r1.z, l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r11.z, r1.z
sample_indexable(texture2d)(float,float,float,float) r6.xw, r8.zwzz, t14.xzwy, s2
mad r8.xy, r6.xwxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r1.z, r8.xyxx, r8.xyxx
add r1.z, -r1.z, l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r8.z, r1.z
add r8.xyz, r8.xyzx, r11.xyzx
add r8.xyz, r8.xyzx, r10.xyzx
mad r8.xyz, r8.xyzx, l(0.250000, 0.250000, 0.250000, 0.000000), cb6[5].xyzx
mul r1.z, cb1[127].z, cb6[15].y
mad r6.xyzw, r7.xyxy, cb6[15].zwzw, r6.yzyz
mad r10.xyzw, r1.zzzz, l(0.100000, 0.100000, -0.100000, -0.100000), r6.zwzw
sample_indexable(texture2d)(float,float,float,float) r10.xy, r10.xyxx, t15.xyzw, s3
mad r11.xy, r10.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r3.w, r11.xyxx, r11.xyxx
add r3.w, -r3.w, l(1.000000)
max r3.w, r3.w, l(0.000000)
sqrt r11.z, r3.w
add r10.xy, r10.zwzz, l(0.418100, 0.354800, 0.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r10.xy, r10.xyxx, t15.xyzw, s3
mad r10.xy, r10.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r3.w, r10.xyxx, r10.xyxx
add r3.w, -r3.w, l(1.000000)
max r3.w, r3.w, l(0.000000)
sqrt r10.z, r3.w
add r10.xyz, r10.xyzx, r11.xyzx
mad r6.xyzw, r1.zzzz, l(-0.100000, 0.100000, 0.100000, -0.100000), r6.xyzw
add r6.xyzw, r6.xyzw, l(0.864861, 0.148384, 0.651340, 0.751638)
sample_indexable(texture2d)(float,float,float,float) r6.xy, r6.xyxx, t15.xyzw, s3
mad r11.xy, r6.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r1.z, r11.xyxx, r11.xyxx
add r1.z, -r1.z, l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r11.z, r1.z
sample_indexable(texture2d)(float,float,float,float) r6.xy, r6.zwzz, t15.xyzw, s3
mad r6.xy, r6.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
dp2 r1.z, r6.xyxx, r6.xyxx
add r1.z, -r1.z, l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r6.z, r1.z
add r6.xyz, r6.xyzx, r11.xyzx
add r6.xyz, r6.xyzx, r10.xyzx
mad r6.xyz, r6.xyzx, l(0.250000, 0.250000, 0.250000, 0.000000), cb6[6].xyzx
add r6.xyz, r6.xyzx, r8.xyzx
mad r6.xyz, r6.xyzx, cb1[123].wwww, cb1[123].xyzx
dp3 r1.z, r6.xyzx, r6.xyzx
rsq r1.z, r1.z
mul r6.xyz, r1.zzzz, r6.xyzx
mul r0.xyz, r0.xyzx, r6.yyyy
mad r0.xyz, r6.xxxx, v0.xyzx, r0.xyzx
mad r0.xyz, r6.zzzz, v1.xyzx, r0.xyzx
dp3 r1.z, r0.xyzx, r0.xyzx
rsq r1.z, r1.z
mul r0.xyz, r0.xyzx, r1.zzzz
mul r6.xyz, r0.wwww, r0.xyzx
add r8.xyz, r4.xyzx, -cb1[162].xyzx
add r8.xyz, r8.xyzx, cb1[162].wwww
max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r9.xyz, -r4.xyzx, r9.xyzx
max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r8.xyz, r8.xyzx, r9.xyzx
min r1.z, r8.z, r8.y
min r1.z, r1.z, r8.x
lt r1.z, r1.w, r1.z
if_nz r1.z
  mad r8.xyz, r4.xyzx, cb1[166].wwww, cb1[166].xyzx
  sample_l_indexable(texture3d)(float,float,float,float) r1.z, r8.xyzx, t10.yzxw, s0, l(0.000000)
else
  add r8.xyz, r4.xyzx, -cb1[163].xyzx
  add r8.xyz, r8.xyzx, cb1[163].wwww
  max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r9.xyz, cb1[163].wwww, cb1[163].xyzx
  add r9.xyz, -r4.xyzx, r9.xyzx
  max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  min r8.xyz, r8.xyzx, r9.xyzx
  min r1.w, r8.z, r8.y
  min r1.w, r1.w, r8.x
  mul r3.w, cb1[163].w, cb1[170].y
  lt r1.w, r3.w, r1.w
  if_nz r1.w
    mad r8.xyz, r4.xyzx, cb1[167].wwww, cb1[167].xyzx
    sample_l_indexable(texture3d)(float,float,float,float) r1.z, r8.xyzx, t11.yzxw, s0, l(0.000000)
  else
    add r8.xyz, r4.xyzx, -cb1[164].xyzx
    add r8.xyz, r8.xyzx, cb1[164].wwww
    max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r9.xyz, cb1[164].wwww, cb1[164].xyzx
    add r9.xyz, -r4.xyzx, r9.xyzx
    max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r8.xyz, r8.xyzx, r9.xyzx
    min r1.w, r8.z, r8.y
    min r1.w, r1.w, r8.x
    add r8.xyz, r4.xyzx, -cb1[165].xyzx
    add r8.xyz, r8.xyzx, cb1[165].wwww
    max r8.xyz, r8.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    add r9.xyz, cb1[165].wwww, cb1[165].xyzx
    add r9.xyz, -r4.xyzx, r9.xyzx
    max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
    min r8.xyz, r8.xyzx, r9.xyzx
    min r3.w, r8.z, r8.y
    min r3.w, r3.w, r8.x
    mul r5.w, cb1[164].w, cb1[170].y
    lt r1.w, r5.w, r1.w
    if_nz r1.w
      mad r8.xyz, r4.xyzx, cb1[168].wwww, cb1[168].xyzx
      sample_l_indexable(texture3d)(float,float,float,float) r1.z, r8.xyzx, t12.yzxw, s0, l(0.000000)
    else
      mul r1.w, cb1[165].w, cb1[170].y
      lt r1.w, r1.w, r3.w
      if_nz r1.w
        mul r1.w, r3.w, cb1[169].w
        mul_sat r1.w, r1.w, l(10.000000)
        mad r8.xyz, r4.xyzx, cb1[169].wwww, cb1[169].xyzx
        sample_l_indexable(texture3d)(float,float,float,float) r3.w, r8.xyzx, t13.yzwx, s0, l(0.000000)
        add r3.w, r3.w, -cb1[170].z
        mad r1.z, r1.w, r3.w, cb1[170].z
      else
        mov r1.z, cb1[170].z
      endif
    endif
  endif
endif
div r1.z, r1.z, cb6[16].z
add_sat r1.z, -r1.z, l(1.000000)
mul r8.xyz, cb1[127].zzzz, cb6[17].xyzx
mad r7.xy, r7.xyxx, cb6[17].wwww, r8.yzyy
mad r8.yz, r8.xxxx, l(0.000000, 0.100000, 0.100000, 0.000000), r7.xxyx
sample_indexable(texture2d)(float,float,float,float) r1.w, r8.yzyy, t16.yzwx, s4
add r9.xyzw, r7.xyxy, l(0.418100, 0.354800, 0.864861, 0.148384)
mad r10.xyzw, r8.xxxx, l(-0.100000, -0.100000, -0.100000, 0.100000), r9.xyzw
sample_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t16.yzwx, s4
add r1.w, r1.w, r3.w
sample_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t16.yzwx, s4
add r8.yz, r7.xxyx, l(0.000000, 0.651340, 0.751638, 0.000000)
mad r8.xw, r8.xxxx, l(0.100000, 0.000000, 0.000000, -0.100000), r8.yyyz
sample_indexable(texture2d)(float,float,float,float) r5.w, r8.xwxx, t16.yzwx, s4
add r3.w, r3.w, r5.w
add r1.w, r1.w, r3.w
mul r1.w, r1.w, l(0.250000)
mul r1.w, r1.w, r1.w
mul r1.w, r1.w, r1.w
mul r1.w, r1.w, cb6[18].x
mul r3.w, cb1[127].z, cb6[18].y
mad r7.xy, r3.wwww, l(0.100000, 0.100000, 0.000000, 0.000000), r7.xyxx
sample_indexable(texture2d)(float,float,float,float) r5.w, r7.xyxx, t17.yzwx, s5
mad r9.xyzw, r3.wwww, l(-0.100000, -0.100000, -0.100000, 0.100000), r9.xyzw
sample_indexable(texture2d)(float,float,float,float) r6.w, r9.xyxx, t17.yzwx, s5
add r5.w, r5.w, r6.w
sample_indexable(texture2d)(float,float,float,float) r6.w, r9.zwzz, t17.yzwx, s5
mad r8.xy, r3.wwww, l(0.100000, -0.100000, 0.000000, 0.000000), r8.yzyy
sample_indexable(texture2d)(float,float,float,float) r3.w, r8.xyxx, t17.yzwx, s5
add r3.w, r3.w, r6.w
add r3.w, r3.w, r5.w
sample_indexable(texture2d)(float,float,float,float) r5.w, r7.xyxx, t18.yzwx, s6
sample_indexable(texture2d)(float,float,float,float) r6.w, r9.xyxx, t18.yzwx, s6
add r5.w, r5.w, r6.w
sample_indexable(texture2d)(float,float,float,float) r6.w, r9.zwzz, t18.yzwx, s6
sample_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t18.xyzw, s6
add r6.w, r6.w, r7.x
add r5.w, r5.w, r6.w
mul r5.w, r5.w, l(0.250000)
mad r3.w, r3.w, l(0.250000), r5.w
mul r3.w, r3.w, cb6[18].z
mul r1.w, r1.w, r3.w
mul r1.z, r1.w, r1.z
dp2 r5.w, v0.xyxx, v0.xyxx
sqrt r5.w, r5.w
div r7.xy, v0.xyxx, r5.wwww
dp2_sat r5.w, r7.zwzz, r7.xyxx
mul r5.w, r5.w, cb6[19].x
mad r1.w, r3.w, r5.w, r1.w
mad r1.z, r1.z, cb6[18].w, r1.w
add_sat r7.xyz, r1.zzzz, cb6[12].xyzx
div r1.zw, r2.xxxy, r2.wwww
mad r1.zw, r1.zzzw, cb1[54].xxxy, cb1[54].wwwz
sample_l_indexable(texture2d)(float,float,float,float) r1.z, r1.zwzz, t19.yzxw, s7, l(0.000000)
mad r1.w, r1.z, cb1[53].x, cb1[53].y
mad r1.z, r1.z, cb1[53].z, -cb1[53].w
div r1.z, l(1.000000, 1.000000, 1.000000, 1.000000), r1.z
add r1.z, r1.z, r1.w
mad r1.z, -r2.z, l(1.000000), r1.z
div_sat r1.z, r1.z, cb6[20].y
mul_sat r8.w, r1.z, cb6[20].z
mov_sat r2.xyz, cb6[19].yzwy
mad r1.z, r2.z, cb1[124].y, cb1[124].x
mad r9.xyz, r4.xyzx, cb1[174].xyzx, cb1[175].xyzx
max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
min r9.xyz, r9.xyzx, l(0.990000, 0.990000, 0.990000, 0.000000)
mul r9.xyz, r9.xyzx, cb1[176].xyzx
ftoi r10.xyz, r9.xyzx
mov r10.w, l(0)
ld_indexable(texture3d)(uint,uint,uint,uint) r10.xyzw, r10.xyzw, t0.xyzw
utof r10.xyzw, r10.xyzw
add r1.w, cb1[176].w, l(1.000000)
div r9.xyz, r9.xyzx, r10.wwww
frc r9.xyz, r9.xyzx
mul r9.xyz, r9.xyzx, cb1[176].wwww
mad r9.xyz, r10.xyzx, r1.wwww, r9.xyzx
add r9.xyz, r9.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000)
mul r9.xyz, r9.xyzx, cb1[177].xyzx
lt r1.w, l(0.000000), cb2[11].z
if_nz r1.w
  sample_l_indexable(texture3d)(float,float,float,float) r10.x, r9.xyzx, t9.xyzw, s1, l(0.000000)
else
  lt r1.w, l(0.000000), cb2[11].y
  movc r10.x, r1.w, cb3[5].x, l(1.000000)
endif
mul r1.w, r2.y, l(0.080000)
mad r11.xyz, -r2.yyyy, l(0.080000, 0.080000, 0.080000, 0.000000), r7.xyzx
mad r11.xyz, r2.xxxx, r11.xyzx, r1.wwww
mad r2.xyz, -r7.xyzx, r2.xxxx, r7.xyzx
mad r2.xyz, r2.xyzx, cb1[121].wwww, cb1[121].xyzx
mad r11.xyz, r11.xyzx, cb1[122].wwww, cb1[122].xyzx
sample_l_indexable(texture3d)(float,float,float,float) r12.xyz, r9.xyzx, t1.zxyw, s1, l(0.000000)
sample_l_indexable(texture3d)(float,float,float,float) r13.xyzw, r9.xyzx, t2.xyzw, s1, l(0.000000)
mad r13.xyzw, r13.xyzw, l(2.000000, 2.000000, 2.000000, 2.000000), l(-1.000000, -1.000000, -1.000000, -1.000000)
sample_l_indexable(texture3d)(float,float,float,float) r14.xyzw, r9.xyzx, t4.xyzw, s1, l(0.000000)
mad r14.xyzw, r14.xyzw, l(2.000000, 2.000000, 2.000000, 2.000000), l(-1.000000, -1.000000, -1.000000, -1.000000)
sample_l_indexable(texture3d)(float,float,float,float) r15.xyzw, r9.xyzx, t6.xyzw, s1, l(0.000000)
mad r15.xyzw, r15.xyzw, l(2.000000, 2.000000, 2.000000, 2.000000), l(-1.000000, -1.000000, -1.000000, -1.000000)
mul r13.xyzw, r12.yyyy, r13.xyzw
mul r13.xyzw, r13.wxyz, l(3.872979, 1.73205125, 1.73205125, 1.73205125)
mul r14.xyzw, r12.zzzz, r14.xyzw
mul r14.xyzw, r14.wxyz, l(3.872979, 1.73205125, 1.73205125, 1.73205125)
mul r15.xyzw, r12.xxxx, r15.xyzw
mul r15.xyzw, r15.wxyz, l(3.872979, 1.73205125, 1.73205125, 1.73205125)
sample_l_indexable(texture3d)(float,float,float,float) r16.xyzw, r9.xyzx, t3.xyzw, s1, l(0.000000)
mad r16.xyzw, r16.xyzw, l(2.000000, 2.000000, 2.000000, 2.000000), l(-1.000000, -1.000000, -1.000000, -1.000000)
sample_l_indexable(texture3d)(float,float,float,float) r17.xyzw, r9.xyzx, t5.xyzw, s1, l(0.000000)
mad r17.xyzw, r17.xyzw, l(2.000000, 2.000000, 2.000000, 2.000000), l(-1.000000, -1.000000, -1.000000, -1.000000)
sample_l_indexable(texture3d)(float,float,float,float) r18.xyzw, r9.xyzx, t7.xyzw, s1, l(0.000000)
mad r18.xyzw, r18.xyzw, l(2.000000, 2.000000, 2.000000, 2.000000), l(-1.000000, -1.000000, -1.000000, -1.000000)
mul r16.xyzw, r12.yyyy, r16.xyzw
mul r16.xyzw, r16.xyzw, l(3.872979, 4.472139, 3.872979, 3.872979)
mul r17.xyzw, r12.zzzz, r17.xyzw
mul r17.xyzw, r17.xyzw, l(3.872979, 4.472139, 3.872979, 3.872979)
mul r18.xyzw, r12.xxxx, r18.xyzw
mul r18.xyzw, r18.xyzw, l(3.872979, 4.472139, 3.872979, 3.872979)
mul r19.xyz, r6.yzxy, r6.yzyy
mul r20.yw, r6.yyyx, r6.zzzz
mad r1.w, r6.x, r6.x, -r19.x
mul r21.yzw, r6.yyzx, l(0.000000, -1.02332771, 1.02332771, -1.02332771)
mad r20.xz, r19.zzyz, l(1.000000, 0.000000, 3.000000, 0.000000), l(0.000000, 0.000000, -1.000000, 0.000000)
mul r19.xyzw, r20.xyzw, l(0.858085215, -0.858085215, 0.247708291, -0.858085215)
mul r1.w, r1.w, l(0.429042608)
mov r20.x, r12.y
mov r20.yzw, r13.yyzw
mov r21.x, l(0.886227548)
dp4 r3.w, r20.xyzw, r21.xyzw
mov r13.yzw, r16.xxyz
dp4 r5.w, r13.xyzw, r19.xyzw
add r3.w, r3.w, r5.w
mad r13.x, r16.w, r1.w, r3.w
mov r16.x, r12.z
mov r16.yzw, r14.yyzw
dp4 r3.w, r16.xyzw, r21.xyzw
mov r14.yzw, r17.xxyz
dp4 r5.w, r14.xyzw, r19.xyzw
add r3.w, r3.w, r5.w
mad r13.y, r17.w, r1.w, r3.w
mov r12.yzw, r15.yyzw
dp4 r3.w, r12.xyzw, r21.xyzw
mov r15.yzw, r18.xxyz
dp4 r5.w, r15.xyzw, r19.xyzw
add r3.w, r3.w, r5.w
mad r13.z, r18.w, r1.w, r3.w
max r12.xyz, r13.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
mul r12.xyz, r12.xyzx, cb1[141].xyzx
lt r1.w, l(0.000000), cb1[149].y
if_nz r1.w
  sample_l_indexable(texture3d)(float,float,float,float) r9.xyz, r9.xyzx, t8.xyzw, s1, l(0.000000)
  mad r9.xyz, r9.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
  dp3 r1.w, r9.xyzx, r9.xyzx
  sqrt r13.x, r1.w
  max r1.w, r13.x, l(0.000100)
  div r9.xyz, r9.xyzx, r1.wwww
  add r1.w, -r13.x, l(1.000000)
  mad r1.w, -r1.w, r1.w, l(1.000000)
  mad r14.xyz, r0.xyzx, r0.wwww, -r9.xyzx
  mad r14.xyz, r1.wwww, r14.xyzx, r9.xyzx
  dp3_sat r3.w, r9.xyzx, r6.xyzx
  add r5.w, -r3.w, l(1.000000)
  mad r13.y, r1.w, r5.w, r3.w
else
  mov r14.xyz, r6.xyzx
  mov r13.xy, l(1.000000,1.000000,0,0)
endif
mov r14.w, l(1.000000)
dp4 r9.x, cb1[152].xyzw, r14.xyzw
dp4 r9.y, cb1[153].xyzw, r14.xyzw
dp4 r9.z, cb1[154].xyzw, r14.xyzw
mul r15.xyzw, r14.yzzx, r14.xyzz
dp4 r16.x, cb1[155].xyzw, r15.xyzw
dp4 r16.y, cb1[156].xyzw, r15.xyzw
dp4 r16.z, cb1[157].xyzw, r15.xyzw
mul r1.w, r14.y, r14.y
mad r1.w, r14.x, r14.x, -r1.w
add r9.xyz, r9.xyzx, r16.xyzx
mad r9.xyz, cb1[158].xyzx, r1.wwww, r9.xyzx
max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
mul r9.xyz, r9.xyzx, cb1[151].xyzx
mul r1.w, r13.y, r13.x
mul r9.xyz, r1.wwww, r9.xyzx
mad r9.xyz, r12.xyzx, l(0.318309873, 0.318309873, 0.318309873, 0.000000), r9.xyzx
dp3 r1.w, r9.xyzx, l(0.300000, 0.590000, 0.110000, 0.000000)
mul r9.xyz, r2.xyzx, r9.xyzx
mad r12.xyz, r7.xyzx, l(2.040400, 2.040400, 2.040400, 0.000000), l(-0.332400, -0.332400, -0.332400, 0.000000)
mad r12.xyz, r7.xyzx, l(-4.795100, -4.795100, -4.795100, 0.000000), r12.xyzx
mad r7.xyz, r7.xyzx, l(2.755200, 2.755200, 2.755200, 0.000000), r12.xyzx
add r7.xyz, r7.xyzx, l(1.332000, 1.332000, 1.332000, 0.000000)
max r7.xyz, r7.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
ftou r1.xy, r1.xyxx
mad r3.w, v4.w, cb4[3].x, cb4[3].y
log r3.w, r3.w
mul r3.w, r3.w, cb4[3].z
max r3.w, r3.w, l(0.000000)
ftou r3.w, r3.w
iadd r5.w, cb4[1].z, l(-1)
umin r3.w, r3.w, r5.w
ushr r1.xy, r1.xyxx, cb4[2].xxxx
imad r1.y, r3.w, cb4[1].y, r1.y
imad r1.x, r1.y, cb4[1].x, r1.x
if_nz cb4[0].z
  and r12.xyzw, cb4[6].xxxx, l(255, 1, 2, 4)
  movc r12.xyzw, r12.xyzw, l(1,1.000000,1.000000,1.000000), l(0,0,0,0)
  and r1.y, cb4[6].x, l(8)
  movc r13.w, r1.y, l(1.000000), l(0)
  ushr r14.xy, cb4[6].xxxx, l(4, 8, 0, 0)
  ubfe r1.y, l(1), l(4), cb4[6].x
  movc r15.x, r1.y, l(1.000000), l(0)
  and r14.xzw, r14.xxxx, l(2, 0, 4, 8)
  movc r15.yzw, r14.xxzw, l(0,1.000000,1.000000,1.000000), l(0,0,0,0)
  dp4 r1.y, r15.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  lt r3.w, cb4[6].w, l(0.000000)
  swapc r14.x, r15.x, r3.w, l(1.000000), r1.y
  mul r15.yzw, r2.wwww, cb4[4].xxyz
  dp3_sat r1.y, r6.xyzx, cb4[4].xyzx
  if_nz r12.x
    mov r13.xyz, r12.yzwy
    dp4 r3.w, r13.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
    mov r10.y, l(1.000000)
    dp4 r5.w, r10.xyyy, r13.xyzw
    add r5.w, r5.w, l(-1.000000)
    mad r3.w, r3.w, r5.w, l(1.000000)
    mad_sat r5.w, r2.w, cb4[6].z, cb4[6].w
    mul r5.w, r5.w, r5.w
    add r3.w, -r14.x, r3.w
    mad r3.w, r5.w, r3.w, r14.x
    mul r3.w, r15.x, r3.w
  else
    mov r3.w, l(1.000000)
  endif
  max r5.w, r1.z, l(0.040000)
  dp3 r6.w, r15.yzwy, r15.yzwy
  rsq r6.w, r6.w
  mul r12.xyz, r6.wwww, r15.yzwy
  dp3 r6.w, r6.xyzx, r12.xyzx
  dp3 r7.w, r6.xyzx, r5.xyzx
  dp3 r9.w, r12.xyzx, r5.xyzx
  mad r10.y, r9.w, l(2.000000), l(2.000000)
  rsq r10.y, r10.y
  add r10.w, r6.w, r7.w
  mul_sat r10.w, r10.y, r10.w
  mad_sat r9.w, r10.y, r9.w, r10.y
  mov_sat r6.w, r6.w
  add r7.w, |r7.w|, l(0.000010)
  min r7.w, r7.w, l(1.000000)
  mul r10.y, r5.w, r5.w
  mul r11.w, r10.y, r10.y
  mad r12.x, r10.w, r11.w, -r10.w
  mad r10.w, r12.x, r10.w, l(1.000000)
  mul r10.w, r10.w, r10.w
  mul r10.w, r10.w, l(3.14159274)
  div r10.w, r11.w, r10.w
  mad r5.w, -r5.w, r5.w, l(1.000000)
  mad r11.w, r7.w, r5.w, r10.y
  mad r5.w, r6.w, r5.w, r10.y
  mul r5.w, r5.w, r7.w
  mad r5.w, r6.w, r11.w, r5.w
  rcp r5.w, r5.w
  mul r5.w, r5.w, r10.w
  add r6.w, -r9.w, l(1.000000)
  mul r7.w, r6.w, r6.w
  mul r7.w, r7.w, r7.w
  mul r9.w, r6.w, r7.w
  mul_sat r10.y, r11.y, l(50.000000)
  mad r6.w, -r7.w, r6.w, l(1.000000)
  mul r12.xyz, r11.xyzx, r6.wwww
  mad r12.xyz, r10.yyyy, r9.wwww, r12.xyzx
  mul r5.w, r5.w, l(0.500000)
  mul r12.xyz, r12.xyzx, r5.wwww
  mad r12.xyz, r2.xyzx, l(0.318309873, 0.318309873, 0.318309873, 0.000000), r12.xyzx
  mul r1.y, r1.y, r3.w
  mul r13.xyz, r1.yyyy, cb4[5].xyzx
  mul r12.xyz, r12.xyzx, r13.xyzx
  and r1.y, r14.y, cb2[16].w
  movc r12.xyz, r1.yyyy, r12.xyzx, l(0,0,0,0)
else
  mov r12.xyz, l(0,0,0,0)
endif
ishl r1.y, r1.x, l(1)
ld_indexable(buffer)(uint,uint,uint,uint) r1.y, r1.yyyy, t24.yxzw
bfi r3.w, l(31), l(1), r1.x, l(1)
ld_indexable(buffer)(uint,uint,uint,uint) r3.w, r3.wwww, t24.yzwx
max r5.w, r1.z, l(0.040000)
mov r13.z, l(1.000000)
mul r6.w, r5.w, r5.w
mul r13.x, r6.w, r6.w
dp3 r6.w, r6.xyzx, r5.xyzx
mov_sat r7.w, r6.w
dp3 r9.w, -r5.xyzx, r6.xyzx
add r9.w, r9.w, r9.w
mad r14.xyz, r6.xyzx, -r9.wwww, -r5.xyzx
mad r9.w, -r5.w, r5.w, l(1.000000)
sqrt r10.y, r9.w
mad r10.y, r5.w, r5.w, r10.y
mul r9.w, r9.w, r10.y
mad r0.xyz, -r0.xyzx, r0.wwww, r14.xyzx
mad r0.xyz, r9.wwww, r0.xyzx, r6.xyzx
dp3 r0.w, r0.xyzx, r0.xyzx
rsq r0.w, r0.w
mul r0.xyz, r0.wwww, r0.xyzx
mul r0.w, r7.w, l(-9.280000)
mad r7.w, r7.w, l(3.600000), l(0.400000)
add r9.w, |r6.w|, l(0.000010)
min r9.w, r9.w, l(1.000000)
mul r14.xyzw, r11.yxyz, l(50.000000, 0.450000, 0.450000, 0.450000)
mov_sat r14.x, r14.x
mul r15.xyz, r2.xyzx, l(0.318309873, 0.318309873, 0.318309873, 0.000000)
mov r16.y, l(1.000000)
mov r10.z, l(1.000000)
mov r17.xyz, r12.xyzx
mov r10.y, l(0)
loop
  uge r10.w, r10.y, r1.y
  breakc_nz r10.w
  iadd r10.w, r3.w, r10.y
  ld_indexable(buffer)(uint,uint,uint,uint) r10.w, r10.wwww, t25.yzwx
  imul null, r11.w, r10.w, l(5)
  ld_indexable(buffer)(uint,uint,uint,uint) r18.xyzw, r11.wwww, t26.xyzw
  imad r19.xyzw, r10.wwww, l(5, 5, 5, 5), l(1, 2, 3, 4)
  ld_indexable(buffer)(uint,uint,uint,uint) r20.xyzw, r19.xxxx, t26.xyzw
  ld_indexable(buffer)(uint,uint,uint,uint) r21.xyzw, r19.yyyy, t26.xyzw
  ld_indexable(buffer)(uint,uint,uint,uint) r22.xyzw, r19.zzzz, t26.xyzw
  ld_indexable(buffer)(uint,uint,uint,uint) r19.xyzw, r19.wwww, t26.xyzw
  f16tof32 r10.w, r22.w
  eq r11.w, r20.w, l(0.000000)
  lt r12.w, l(-2.000000), r22.x
  add r18.xyz, -r4.xyzx, r18.xyzx
  dp3 r13.y, r18.xyzx, r18.xyzx
  rsq r13.w, r13.y
  mul r23.xyz, r13.wwww, r18.xyzx
  if_nz r11.w
    lt r11.w, l(0.000000), r10.w
    if_nz r11.w
      mul r24.xyz, r10.wwww, r19.xyzx
      mad r25.xyz, -r24.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), r18.xyzx
      mad r24.xyz, r24.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), r18.xyzx
      dp3 r11.w, r25.xyzx, r25.xyzx
      dp3 r13.w, r24.xyzx, r24.xyzx
      rsq r15.w, r11.w
      rsq r16.w, r13.w
      mul r11.w, r11.w, r15.w
      mul r13.w, r13.w, r16.w
      dp3 r17.w, r25.xyzx, r24.xyzx
      mad r11.w, r11.w, r13.w, r17.w
      mad r11.w, r11.w, l(0.500000), l(1.000000)
      rcp r26.y, r11.w
      dp3 r11.w, r6.xyzx, r25.xyzx
      dp3 r13.w, r6.xyzx, r24.xyzx
      mul r13.w, r16.w, r13.w
      mad r11.w, r11.w, r15.w, r13.w
      mul_sat r26.x, r11.w, l(0.500000)
    else
      add r11.w, r13.y, l(1.000000)
      rcp r26.y, r11.w
      dp3 r11.w, r6.xyzx, r23.xyzx
      mov_sat r13.w, r11.w
      lt r15.w, l(0.000000), r22.z
      mul r16.w, r22.z, r22.z
      div r16.w, r16.w, r13.y
      min r16.w, r16.w, l(1.000000)
      sqrt r16.w, r16.w
      lt r17.w, r11.w, r16.w
      max r22.w, r11.w, -r16.w
      add r22.w, r16.w, r22.w
      mul r22.w, r22.w, r22.w
      mul r16.w, r16.w, l(4.000000)
      div r16.w, r22.w, r16.w
      movc r11.w, r17.w, r16.w, r11.w
      movc r26.x, r15.w, r11.w, r13.w
    endif
    mul r11.w, r18.w, r18.w
    mul r11.w, r11.w, r13.y
    mad r11.w, -r11.w, r11.w, l(1.000000)
    max r11.w, r11.w, l(0.000000)
    mul r26.z, r11.w, r11.w
  else
    dp3_sat r16.x, r6.xyzx, r23.xyzx
    mul r24.xyz, r18.wwww, r18.xyzx
    dp3 r11.w, r24.xyzx, r24.xyzx
    min r11.w, r11.w, l(1.000000)
    add r11.w, -r11.w, l(1.000000)
    log r11.w, r11.w
    mul r11.w, r11.w, r20.w
    exp r16.z, r11.w
    mov r26.xyz, r16.xyzx
  endif
  dp3 r11.w, r23.xyzx, r21.xyzx
  add r11.w, -r22.x, r11.w
  mul_sat r11.w, r22.y, r11.w
  mul r11.w, r11.w, r11.w
  movc r11.w, r12.w, r11.w, l(1.000000)
  lt r12.w, l(0.000000), r26.z
  lt r13.w, l(0.000000), r11.w
  and r12.w, r12.w, r13.w
  if_nz r12.w
    and r12.w, r21.w, l(255)
    movc r12.w, r12.w, l(1), l(0)
    if_nz r12.w
      and r23.xyzw, r21.wwww, l(1, 2, 4, 8)
      movc r23.xyzw, r23.xyzw, l(1.000000,1.000000,1.000000,1.000000), l(0,0,0,0)
      ushr r12.w, r21.w, l(4)
      ubfe r13.w, l(1), l(4), r21.w
      movc r24.x, r13.w, l(1.000000), l(0)
      and r16.xzw, r12.wwww, l(2, 0, 4, 8)
      movc r24.yzw, r16.xxzw, l(0,1.000000,1.000000,1.000000), l(0,0,0,0)
      dp4 r12.w, r24.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
      dp4 r13.w, r23.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
      dp4 r15.w, r10.xzzz, r23.xyzw
      add r15.w, r15.w, l(-1.000000)
      mad r13.w, r13.w, r15.w, l(1.000000)
      mul r12.w, r12.w, r13.w
    else
      mov r12.w, l(1.000000)
    endif
    mul r13.w, r26.z, r26.y
    mul r11.w, r11.w, r13.w
    mul r11.w, r12.w, r11.w
    rcp r12.w, r13.y
    lt r13.y, l(0.000000), r19.w
    if_nz r13.y
      mul r13.y, r19.w, r19.w
      mul_sat r13.y, r12.w, r13.y
      div r13.y, r13.y, r7.w
      add r13.yw, r13.yyyy, r13.xxxz
      sqrt r15.w, r13.y
      sqrt r15.w, r15.w
    else
      mov r13.yw, r13.xxxz
      mov r15.w, r5.w
    endif
    lt r16.x, l(0.000000), r10.w
    if_nz r16.x
      mul r16.x, r10.w, l(0.500000)
      mul r16.x, r16.x, r16.x
      mul_sat r16.x, r12.w, r16.x
      div r16.x, r16.x, r7.w
      add r16.xz, r13.yywy, r16.xxxx
      div r16.xz, r13.yywy, r16.xxzx
      sqrt r16.xz, r16.xxzx
      mul r19.xyz, r10.wwww, r19.xyzx
      mad r21.xyz, -r19.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), r18.xyzx
      dp3 r16.w, r0.xyzx, r19.xyzx
      mad r22.xyw, r16.wwww, r0.xyxz, -r19.xyxz
      dp3 r17.w, r21.xyzx, r22.xywx
      mul r16.w, r16.w, r16.w
      mad r10.w, r10.w, r10.w, -r16.w
      div_sat r10.w, r17.w, r10.w
      mad r18.xyz, r10.wwww, r19.xyzx, r21.xyzx
    else
      mov r16.xz, l(1.000000,0,1.000000,0)
    endif
    lt r10.w, l(0.000000), r22.z
    if_nz r10.w
      mul r10.w, r22.z, r22.z
      mul_sat r10.w, r12.w, r10.w
      div r10.w, r10.w, r7.w
      add r19.xy, r10.wwww, r13.ywyy
      div r13.yw, r13.yyyw, r19.xxxy
      mul r16.xz, r13.yywy, r16.xxzx
      dp3 r10.w, r18.xyzx, r0.xyzx
      mad r19.xyz, r10.wwww, r0.xyzx, -r18.xyzx
      dp3 r10.w, r19.xyzx, r19.xyzx
      rsq r10.w, r10.w
      mul_sat r10.w, r10.w, r22.z
      mad r18.xyz, r19.xyzx, r10.wwww, r18.xyzx
    endif
    dp3 r10.w, r18.xyzx, r18.xyzx
    rsq r10.w, r10.w
    mul r18.xyz, r10.wwww, r18.xyzx
    dp3 r10.w, r6.xyzx, r18.xyzx
    dp3 r12.w, r18.xyzx, r5.xyzx
    mad r13.y, r12.w, l(2.000000), l(2.000000)
    rsq r13.y, r13.y
    add r13.w, r6.w, r10.w
    mul_sat r13.w, r13.y, r13.w
    mad_sat r12.w, r13.y, r12.w, r13.y
    mov_sat r10.w, r10.w
    mul r13.y, r15.w, r15.w
    mul r16.w, r13.y, r13.y
    mad r17.w, r13.w, r16.w, -r13.w
    mad r13.w, r17.w, r13.w, l(1.000000)
    mul r13.w, r13.w, r13.w
    mul r13.w, r13.w, l(3.14159274)
    div r13.w, r16.w, r13.w
    mul r13.w, r16.x, r13.w
    mad r15.w, -r15.w, r15.w, l(1.000000)
    mad r16.x, r9.w, r15.w, r13.y
    mad r13.y, r10.w, r15.w, r13.y
    mul r13.y, r9.w, r13.y
    mad r10.w, r10.w, r16.x, r13.y
    rcp r10.w, r10.w
    mul r10.w, r10.w, r13.w
    add r12.w, -r12.w, l(1.000000)
    mul r13.y, r12.w, r12.w
    mul r13.y, r13.y, r13.y
    mul r13.w, r12.w, r13.y
    mad r12.w, -r13.y, r12.w, l(1.000000)
    mul r18.xyz, r11.xyzx, r12.wwww
    mad r18.xyz, r14.xxxx, r13.wwww, r18.xyzx
    mul r10.w, r10.w, l(0.500000)
    mul r18.xyz, r18.xyzx, r10.wwww
    mad r16.xzw, r15.xxyz, r16.zzzz, r18.xxyz
    mul r10.w, r11.w, r26.x
    mul r18.xyz, r10.wwww, r20.xyzx
    mul r16.xzw, r16.xxzw, r18.xxyz
  else
    mov r16.xzw, l(0,0,0,0)
  endif
  ushr r10.w, r21.w, l(8)
  and r10.w, r10.w, cb2[16].w
  add r16.xzw, r16.xxzw, r17.xxyz
  movc r17.xyz, r10.wwww, r16.xzwx, r17.xyzx
  iadd r10.y, r10.y, l(1)
endloop
add r0.x, r6.w, r6.w
mad r5.yzw, r0.xxxx, r6.xxyz, -r5.xxyz
iadd r0.x, r1.x, cb4[0].w
ishl r0.y, r0.x, l(1)
ld_indexable(buffer)(uint,uint,uint,uint) r0.y, r0.yyyy, t24.yxzw
bfi r0.x, l(31), l(1), r0.x, l(1)
ld_indexable(buffer)(uint,uint,uint,uint) r0.x, r0.xxxx, t24.xyzw
log r0.z, r1.z
mad r0.z, -r0.z, l(1.200000), l(1.000000)
add r1.x, cb1[159].z, l(-1.000000)
add r1.x, -r0.z, r1.x
mov r5.x, l(0)
mov r10.xyz, l(0,0,0,0)
mov r1.y, l(1.000000)
mov r3.w, l(0)
mov r6.w, l(1.000000)
mov r7.w, l(0)
loop
  uge r9.w, r7.w, r0.y
  breakc_nz r9.w
  lt r9.w, r1.y, l(0.001000)
  if_nz r9.w
    break
  endif
  iadd r9.w, r0.x, r7.w
  ld_indexable(buffer)(uint,uint,uint,uint) r9.w, r9.wwww, t25.yzwx
  add r12.xyz, r4.xyzx, -cb5[r9.w + 0].xyzx
  dp3 r10.w, r12.xyzx, r12.xyzx
  sqrt r11.w, r10.w
  lt r12.w, r11.w, cb5[r9.w + 0].w
  if_nz r12.w
    lt r12.w, l(0.000000), cb5[r9.w + 341].z
    if_nz r12.w
      ishl r12.w, r9.w, l(2)
      mul r13.xyz, r4.yyyy, cb5[r12.w + 1024].xyzx
      mad r13.xyz, r4.xxxx, cb5[r12.w + 1023].xyzx, r13.xyzx
      mad r13.xyz, r4.zzzz, cb5[r12.w + 1025].xyzx, r13.xyzx
      add r13.xyz, r13.xyzx, cb5[r12.w + 1026].xyzx
      mul r15.xyz, r5.zzzz, cb5[r12.w + 1024].xyzx
      mad r15.xyz, r5.yyyy, cb5[r12.w + 1023].xyzx, r15.xyzx
      mad r15.xyz, r5.wwww, cb5[r12.w + 1025].xyzx, r15.xyzx
      rcp r15.xyz, r15.xyzx
      mad r16.xyz, -r13.xyzx, r15.xyzx, -r15.xyzx
      mad r15.xyz, -r13.xyzx, r15.xyzx, r15.xyzx
      max r15.xyz, r15.xyzx, r16.xyzx
      min r12.w, r15.z, r15.y
      min r12.w, r12.w, r15.x
      mad r15.xyz, r12.wwww, r5.yzwy, r4.xyzx
      add r16.xyz, cb5[r9.w + 0].xyzx, cb5[r9.w + 682].xyzx
      add r15.xyz, r15.xyzx, -r16.xyzx
      mul r12.w, l(0.700000), cb5[r9.w + 2387].w
      mad r16.xyz, -cb5[r9.w + 2387].wwww, l(0.500000, 0.500000, 0.500000, 0.000000), cb5[r9.w + 2387].xyzx
      mul r18.xyz, r13.xyzx, cb5[r9.w + 2387].xyzx
      lt r19.xyz, r18.xyzx, -r16.xyzx
      mad r20.xyz, r13.xyzx, cb5[r9.w + 2387].xyzx, r16.xyzx
      mov r20.xyz, |r20.xyzx|
      and r19.xyz, r19.xyzx, r20.xyzx
      lt r18.xyz, r16.xyzx, r18.xyzx
      mad r13.xyz, r13.xyzx, cb5[r9.w + 2387].xyzx, -r16.xyzx
      mov r13.xyz, |r13.xyzx|
      and r13.xyz, r13.xyzx, r18.xyzx
      dp3 r13.w, r19.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
      dp3 r13.x, r13.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
      add r13.x, r13.x, r13.w
      div r12.w, l(1.000000, 1.000000, 1.000000, 1.000000), r12.w
      mul_sat r12.w, r12.w, r13.x
      mad r13.x, r12.w, l(-2.000000), l(3.000000)
      mul r12.w, r12.w, r12.w
      mad r13.x, -r13.x, r12.w, l(1.000000)
    else
      div_sat r11.w, r11.w, cb5[r9.w + 0].w
      dp3 r12.w, r5.yzwy, r12.xyzx
      mad r10.w, -cb5[r9.w + 0].w, cb5[r9.w + 0].w, r10.w
      mad r10.w, r12.w, r12.w, -r10.w
      ge r16.x, r10.w, l(0.000000)
      sqrt r10.w, r10.w
      add r10.w, -r12.w, r10.w
      mad r12.xyz, r10.wwww, r5.yzwy, r12.xyzx
      add r12.yzw, r12.xxyz, -cb5[r9.w + 682].xxyz
      mad r10.w, r11.w, l(2.500000), l(-1.500000)
      max r10.w, r10.w, l(0.000000)
      mul r11.w, r10.w, r10.w
      mad r10.w, -r10.w, l(2.000000), l(3.000000)
      mad r12.x, -r11.w, r10.w, l(1.000000)
      movc r13.xyzw, r16.xxxx, r12.xyzw, r5.xyzw
      mov r15.xyz, r13.yzwy
    endif
    mov r15.w, cb5[r9.w + 341].y
    sample_l_indexable(texturecubearray)(float,float,float,float) r12.xyzw, r15.xyzw, t27.xyzw, s11, r1.x
    mul r12.xyz, r12.xyzx, cb5[r9.w + 341].xxxx
    mul r12.xyz, r13.xxxx, r12.xyzx
    mad r10.xyz, r12.xyzx, r1.yyyy, r10.xyzx
    mad r10.w, -r12.w, r13.x, l(1.000000)
    mul r1.y, r1.y, r10.w
    mul r9.w, r13.x, cb5[r9.w + 682].w
    mad r3.w, r9.w, r6.w, r3.w
    add r9.w, -r13.x, l(1.000000)
    mul r6.w, r6.w, r9.w
  endif
  iadd r7.w, r7.w, l(1)
endloop
mul r10.xyz, r10.xyzx, cb1[141].xyzx
dp3 r0.x, cb1[141].xyzx, l(0.300000, 0.590000, 0.110000, 0.000000)
mul r10.w, r0.x, r3.w
lt r0.x, l(0.000000), cb0[17].y
if_nz r0.x
  add r0.x, -r0.z, cb0[17].x
  add r0.x, r0.x, l(-1.000000)
  sample_l_indexable(texturecube)(float,float,float,float) r0.xyz, r5.yzwy, t20.xyzw, s8, r0.x
  dp3 r1.x, cb1[151].xyzx, l(0.300000, 0.590000, 0.110000, 0.000000)
  mul r1.x, r1.x, cb0[18].x
  mul r0.xyz, r0.xyzx, cb1[151].xyzx
  lt r3.w, cb0[17].z, l(1.000000)
  mad r12.xyz, r1.yyyy, r0.xyzx, r10.xyzx
  mad r12.w, r1.x, r6.w, r10.w
  movc r0.xyz, r3.wwww, l(0,0,0,0), r0.xyzx
  movc r10.xyzw, r3.wwww, r12.xyzw, r10.xyzw
else
  mov r0.xyz, l(0,0,0,0)
endif
mad_sat r1.x, r1.z, cb1[161].x, cb1[161].y
mad r3.w, r1.x, l(-2.000000), l(3.000000)
mul r1.x, r1.x, r1.x
mul r1.x, r1.x, r3.w
max r3.w, r10.w, l(0.000100)
div r3.w, r1.w, r3.w
min r3.w, r3.w, cb1[161].z
add r3.w, r3.w, l(-1.000000)
mad r1.x, r1.x, r3.w, l(1.000000)
mul r0.xyz, r0.xyzx, r1.yyyy
mad r0.xyz, r10.xyzx, r1.xxxx, r0.xyzx
mad r1.xyw, r14.yzyw, r1.wwww, -r0.xyxz
mad r0.xyz, cb1[147].wwww, r1.xywx, r0.xyzx
eq r1.x, cb1[128].w, l(0.000000)
if_nz r1.x
  utof r1.x, cb1[128].z
  mad r1.xy, r1.xxxx, l(32.665001, 11.815000, 0.000000, 0.000000), v4.xyxx
  dp2 r1.x, r1.xyxx, l(0.0671105608, 0.00583714992, 0.000000, 0.000000)
  frc r1.x, r1.x
  mul r1.x, r1.x, l(52.982918)
  frc r1.x, r1.x
  add r1.x, r1.x, l(-0.500000)
  mul r10.xyzw, r3.yyyy, cb1[9].xyzw
  mad r10.xyzw, r3.xxxx, cb1[8].xyzw, r10.xyzw
  mad r3.xyzw, r3.zzzz, cb1[10].xyzw, r10.xyzw
  add r3.xyzw, r3.xyzw, cb1[11].xyzw
  mul r5.xyz, r2.wwww, r5.yzwy
  mul r10.xyzw, r5.yyyy, cb1[9].xyzw
  mad r10.xyzw, r5.xxxx, cb1[8].xyzw, r10.xyzw
  mad r5.xyzw, r5.zzzz, cb1[10].xyzw, r10.xyzw
  add r5.xyzw, r3.xyzw, r5.xyzw
  mul r10.xyzw, r3.yyyy, cb1[25].xyzw
  mad r10.xyzw, r3.xxxx, cb1[24].xyzw, r10.xyzw
  mad r10.xyzw, r3.zzzz, cb1[26].xyzw, r10.xyzw
  mad r3.xyzw, r3.wwww, cb1[27].xyzw, r10.xyzw
  mul r10.xyzw, r5.yyyy, cb1[25].xyzw
  mad r10.xyzw, r5.xxxx, cb1[24].xyzw, r10.xyzw
  mad r10.xyzw, r5.zzzz, cb1[26].xyzw, r10.xyzw
  mad r5.xyzw, r5.wwww, cb1[27].xyzw, r10.xyzw
  div r10.xyz, r3.xyzx, r3.wwww
  div r5.xyz, r5.xyzx, r5.wwww
  mad r1.yw, r2.wwww, cb1[26].zzzw, r3.zzzw
  div r1.y, r1.y, r1.w
  add r3.xyz, -r10.xyzx, r5.xyzx
  dp2 r1.w, r3.xyxx, r3.xyxx
  sqrt r1.w, r1.w
  mul r2.w, r1.w, l(0.500000)
  mad r5.xy, r10.xyxx, r2.wwww, r3.xyxx
  mad r5.xy, -r1.wwww, l(0.500000, 0.500000, 0.000000, 0.000000), |r5.xyxx|
  max r5.xy, r5.xyxx, l(0.000000, 0.000000, 0.000000, 0.000000)
  add r5.xy, |r3.xyxx|, -r5.xyxx
  div r5.xy, r5.xyxx, |r3.xyxx|
  min r1.w, r5.y, r5.x
  div r1.w, r1.w, r2.w
  mul r3.xyz, r1.wwww, r3.xyzx
  mad r5.xy, r10.xyxx, l(0.500000, -0.500000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
  mul r10.xy, r5.xyxx, cb0[39].xyxx
  mul r3.xy, r3.xyxx, cb0[39].xyxx
  add r1.y, -r1.y, r10.z
  mul r1.y, r1.y, l(4.000000)
  max r1.y, r1.y, |r3.z|
  mul r1.w, r1.y, l(0.0833333358)
  mul r5.xyz, r3.xyzx, l(0.0416666679, -0.0416666679, 0.0833333358, 0.000000)
  mad r10.xyz, r5.xyzx, r1.xxxx, r10.xyzx
  mov r12.z, l(2.000000)
  mov r13.z, l(3.000000)
  mov r15.z, l(1.000000)
  mov r16.z, l(0)
  mov r14.yzw, l(0,0,0,0)
  mov r1.x, l(1.000000)
  mov r16.x, l(0)
  mov r18.xyz, r10.xyzx
  mov r2.w, l(0)
  loop
    ige r3.w, r2.w, l(12)
    breakc_nz r3.w
    mad r19.xyzw, r3.xyxy, l(0.0416666679, -0.0416666679, 0.0833333358, -0.0833333358), r18.xyxy
    mad r20.xyzw, r3.xyxy, l(0.125000, -0.125000, 0.166666672, -0.166666672), r18.xyxy
    mad r21.xyzw, r3.zzzz, l(0.0833333358, 0.166666672, 0.250000, 0.333333343), r18.zzzz
    sample_l_indexable(texture2d)(float,float,float,float) r22.x, r19.xyxx, t22.xyzw, s9, l(1.000000)
    sample_l_indexable(texture2d)(float,float,float,float) r22.y, r19.zwzz, t22.yxzw, s9, l(1.000000)
    sample_l_indexable(texture2d)(float,float,float,float) r22.z, r20.xyxx, t22.yzxw, s9, l(1.000000)
    sample_l_indexable(texture2d)(float,float,float,float) r22.w, r20.zwzz, t22.yzwx, s9, l(1.000000)
    add r19.xyzw, r21.xyzw, -r22.xyzw
    mad r20.xyzw, -r1.yyyy, l(0.0833333358, 0.0833333358, 0.0833333358, 0.0833333358), -r19.xyzw
    lt r20.xyzw, |r20.xyzw|, r1.wwww
    or r21.xy, r20.zwzz, r20.xyxx
    or r3.w, r21.y, r21.x
    if_nz r3.w
      mov r12.xy, r19.yzyy
      mov r13.xy, r19.zwzz
      movc r12.xyw, r20.zzzz, r12.xyxz, r13.xyxz
      mov r15.xy, r19.xyxx
      movc r12.xyw, r20.yyyy, r15.xyxz, r12.xyxw
      mov r16.y, r15.x
      movc r12.xyw, r20.xxxx, r16.xyxz, r12.xyxw
      add r3.w, -r12.y, r12.x
      div_sat r3.w, r12.x, r3.w
      add r3.w, r3.w, r12.w
      mad r14.yzw, r5.xxyz, r3.wwww, r18.xxyz
      mov r1.x, l(0.500000)
      break
    endif
    mad r18.xyz, r3.xyzx, l(0.166666672, -0.166666672, 0.333333343, 0.000000), r18.xyzx
    mov r16.x, r19.w
    iadd r2.w, r2.w, l(4)
    mov r14.yzw, l(0,0,0,0)
    mov r1.x, l(1.000000)
  endloop
  lt r1.x, r1.x, l(1.000000)
  if_nz r1.x
    mul r1.xy, r14.yzyy, cb0[39].zwzz
    mad r1.xy, r1.xyxx, l(2.000000, -2.000000, 0.000000, 0.000000), l(-1.000000, 1.000000, 0.000000, 0.000000)
    mul r1.xy, r1.xyxx, cb1[54].xyxx
    div r1.xy, r1.xyxx, cb1[54].xyxx
    mul r3.xyz, r1.yyyy, cb1[111].xywx
    mad r1.xyw, r1.xxxx, cb1[110].xyxw, r3.xyxz
    mad r1.xyw, r14.wwww, cb1[112].xyxw, r1.xyxw
    add r1.xyw, r1.xyxw, cb1[113].xyxw
    div r1.xy, r1.xyxx, r1.wwww
    mul r3.xy, r1.xyxx, cb1[54].xyxx
    mad r1.xy, r1.xyxx, cb1[54].xyxx, cb1[54].wzww
    sample_l_indexable(texture2d)(float,float,float,float) r5.xyz, r1.xyxx, t23.xyzw, s10, l(0.000000)
    div r1.xy, r3.xyxx, cb1[54].xyxx
    mad_sat r1.xy, |r1.xyxx|, l(5.000000, 5.000000, 0.000000, 0.000000), l(-4.000000, -4.000000, 0.000000, 0.000000)
    dp2 r1.x, r1.xyxx, r1.xyxx
    add r1.x, -r1.x, l(1.000000)
    max r1.x, r1.x, l(0.000000)
    mov r5.w, l(1.000000)
    mul r3.xyzw, r1.xxxx, r5.xyzw
    min r1.xyw, -r3.xyxz, l(0.000000, 0.000000, 0.000000, 0.000000)
    mad_sat r2.w, -r1.z, l(6.600000), l(2.000000)
    mul r1.xyw, -r1.xyxw, r2.wwww
    mad r2.w, -r3.w, r2.w, l(1.000000)
    mad r0.xyz, r0.xyzx, r2.wwww, r1.xywx
  endif
endif
mad r3.xyzw, r1.zzzz, l(-1.000000, -0.027500, -0.572000, 0.022000), l(1.000000, 0.042500, 1.040000, -0.040000)
mul r1.x, r3.x, r3.x
exp r0.w, r0.w
min r0.w, r0.w, r1.x
mad r0.w, r0.w, r3.x, r3.y
mad r1.xy, r0.wwww, l(-1.040000, 1.040000, 0.000000, 0.000000), r3.zwzz
mul r0.w, r14.x, r1.y
mad r1.xyw, r11.xyxz, r1.xxxx, r0.wwww
dp3 r0.w, cb0[19].xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
lt r0.w, l(0.000100), |r0.w|
if_nz r0.w
  mov r4.w, l(-1.000000)
  dp4 r0.w, cb0[19].xyzw, r4.xyzw
  mad_sat r0.w, |r0.w|, cb0[26].x, cb0[26].y
  add r0.w, -r0.w, l(1.000000)
  add r3.xyz, r4.xyzx, -cb0[20].xyzx
  dp3 r2.w, r3.xyzx, cb0[21].xyzx
  add r2.w, -|r2.w|, cb0[21].w
  mul_sat r2.w, r2.w, cb0[26].x
  dp3 r3.x, r3.xyzx, cb0[22].xyzx
  add r3.x, -|r3.x|, cb0[22].w
  mul_sat r3.x, r3.x, cb0[26].x
  mul r2.w, r2.w, r3.x
  mul r0.w, r0.w, r2.w
  lt r2.w, l(0.000000), r0.w
  if_nz r2.w
    add r3.xyz, r4.xyzx, -cb1[55].xyzx
    dp3 r2.w, r3.xyzx, r3.xyzx
    rsq r2.w, r2.w
    mul r3.xyz, r2.wwww, r3.xyzx
    dp3 r2.w, r3.xyzx, -cb0[19].xyzx
    add r2.w, r2.w, r2.w
    mad r3.xyz, cb0[19].xyzx, r2.wwww, r3.xyzx
    mul r5.xyz, r6.yyyy, cb0[24].xyzx
    mad r5.xyz, r6.xxxx, cb0[23].xyzx, r5.xyzx
    mad r5.xyz, r6.zzzz, cb0[25].xyzx, r5.xyzx
    dp3 r2.w, r3.xyzx, r5.xyzx
    add r2.w, r2.w, r2.w
    mad r3.xyz, r5.xyzx, -r2.wwww, r3.xyzx
    mad r3.xyz, r3.xyzx, cb0[26].zzzz, r4.xyzx
    add r3.xyz, r3.xyzx, cb1[58].xyzx
    mul r5.xyz, r3.yyyy, cb1[9].xyzx
    mad r3.xyw, r3.xxxx, cb1[8].xyxz, r5.xyxz
    mad r3.xyz, r3.zzzz, cb1[10].xyzx, r3.xywx
    add r3.xyz, r3.xyzx, cb1[11].xyzx
    ishl r2.w, cb1[161].w, l(2)
    mul r5.xyz, r3.yyyy, cb0[r2.w + 29].xywx
    mad r3.xyw, r3.xxxx, cb0[r2.w + 28].xyxw, r5.xyxz
    mad r3.xyz, r3.zzzz, cb0[r2.w + 30].xywx, r3.xywx
    add r3.xyz, r3.xyzx, cb0[r2.w + 31].xywx
    movc r2.w, cb0[38].x, cb1[161].w, l(0)
    div r3.xy, r3.xyxx, r3.zzzz
    max r3.xy, r3.xyxx, l(-1.000000, -1.000000, 0.000000, 0.000000)
    min r3.xy, r3.xyxx, l(1.000000, 1.000000, 0.000000, 0.000000)
    mad r3.xy, r3.xyxx, cb0[r2.w + 36].xyxx, cb0[r2.w + 36].zwzz
    dp3 r2.w, cb0[19].xyzx, r6.xyzx
    mad_sat r2.w, r2.w, cb0[27].x, cb0[27].y
    add r1.z, r1.z, l(-0.200000)
    mul_sat r1.z, r1.z, l(10.000000)
    add r1.z, -r1.z, l(1.000000)
    mul r0.w, r0.w, r2.w
    mul r0.w, r1.z, r0.w
    sample_l_indexable(texture2d)(float,float,float,float) r3.xyzw, r3.xyxx, t21.xyzw, s11, l(0.000000)
    mul r0.w, r0.w, r3.w
    mul r3.xyz, r0.wwww, r3.xyzx
  else
    mov r3.xyz, l(0,0,0,0)
    mov r0.w, l(0)
  endif
  add r0.w, -r0.w, l(1.000000)
  mad r0.xyz, r0.wwww, r0.xyzx, r3.xyzx
endif
mul r0.xyz, r1.xywx, r0.xyzx
mad r1.xyz, r11.xyzx, l(2.040400, 2.040400, 2.040400, 0.000000), l(-0.332400, -0.332400, -0.332400, 0.000000)
mad r1.xyz, r11.xyzx, l(-4.795100, -4.795100, -4.795100, 0.000000), r1.xyzx
mad r1.xyz, r11.xyzx, l(2.755200, 2.755200, 2.755200, 0.000000), r1.xyzx
add r1.xyz, r1.xyzx, l(1.332000, 1.332000, 1.332000, 0.000000)
max r1.xyz, r1.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mad r0.xyz, r0.xyzx, r1.xyzx, r17.xyzx
mad r1.xyz, r11.xyzx, l(0.450000, 0.450000, 0.450000, 0.000000), r2.xyzx
add r1.xyz, -r0.xyzx, r1.xyzx
mad r0.xyz, cb1[129].xxxx, r1.xyzx, r0.xyzx
max r8.xyz, cb6[8].xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
lt r0.w, l(0.000000), cb1[125].x
if_nz r0.w
  add r1.xyz, r4.xyzx, -cb2[8].xyzx
  add r2.xyz, cb2[9].xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  lt r1.xyz, r2.xyzx, |r1.xyzx|
  or r0.w, r1.y, r1.x
  or r0.w, r1.z, r0.w
  dp3 r1.x, r4.xyzx, l(0.577000, 0.577000, 0.577000, 0.000000)
  mul r1.x, r1.x, l(0.002000)
  frc r1.x, r1.x
  lt r1.x, l(0.500000), r1.x
  movc r1.yzw, r1.xxxx, l(0,0,1.000000,1.000000), l(0,1.000000,1.000000,0)
  mov r1.x, l(1.000000)
  movc r8.xyzw, r0.wwww, r1.yzwx, r8.xyzw
  mov o0.w, r8.w
else
  mov o0.w, r8.w
endif
mad r0.xyz, r9.xyzx, r7.xyzx, r0.xyzx
add r0.xyz, r8.xyzx, r0.xyzx
mad o0.xyz, r0.xyzx, v3.wwww, v3.xyzx
ret
// Approximately 0 instruction slots used

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