//++++++++++++++++++++++++++++++++++++
// QuantV 3.0.0 shader
// Original code by Rockstar Games
//++++++++++++++++++++++++++++++++++++
ps_4_0
dcl_constantbuffer cb1[16], immediateIndexed
dcl_constantbuffer cb2[20], immediateIndexed
dcl_constantbuffer cb3[59], immediateIndexed
dcl_constantbuffer cb11[8], immediateIndexed
dcl_constantbuffer cb6[15], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s11, mode_default
dcl_sampler s15, mode_comparison
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t11
dcl_resource_texture2d (float,float,float,float) t15
dcl_input_ps linear v0.xy
dcl_input_ps linear v0.z
dcl_input_ps linear v1.xyz
dcl_input_ps linear v2.xyz
dcl_input_ps linear v4.x
dcl_input_ps_siv linear noperspective v5.xy, position
dcl_output o0.xyzw
dcl_output o1.x
dcl_output o2.x
dcl_temps 23
dcl_indexableTemp x0[4], 4
sample r0.xyzw, v0.xyxx, t0.xyzw, s0
dp3 r1.x, v1.xyzx, v1.xyzx
rsq r1.x, r1.x
mul r1.yzw, r1.xxxx, v1.xxyz
mul r0.xyz, r0.xyzx, cb11[0].xyzx
add_sat r2.x, cb2[13].z, cb3[49].w
mul r2.x, r2.x, cb2[12].y
lt r2.w, l(5.800000e+003), v4.x
movc r2.w, r2.w, l(16.000000), l(6.000000)
mul r2.y, r2.w, cb11[7].z
mul r2.y, r2.y, l(3.000000e-001)
mul r0.xyz, r0.xyzx, r0.xyzx
add r3.xyz, -v2.xyzx, cb1[15].xyzx
dp3 r2.z, r3.xyzx, r3.xyzx
rsq r2.z, r2.z
mul r4.xyz, r2.zzzz, r3.xyzx
mul r2.z, cb2[12].z, cb2[12].z
dp3 r2.w, r3.xyzx, cb1[14].xyzx
add r3.xyz, v2.xyzx, -cb1[15].xyzx
mul r5.xyz, r3.yyyy, cb6[1].xyzx
mad r5.xyz, r3.xxxx, cb6[0].xyzx, r5.xyzx
mad r5.xyz, r3.zzzz, cb6[2].xyzx, r5.xyzx
mad r6.xyz, r5.xyzx, cb6[4].xyzx, cb6[8].xyzx
mov x0[0].xyz, r6.xyzx
mad r7.xyz, r5.xyzx, cb6[5].xyzx, cb6[9].xyzx
mov x0[1].xyz, r7.xyzx
mad r8.xyz, r5.xyzx, cb6[6].xyzx, cb6[10].xyzx
mov x0[2].xyz, r8.xyzx
mad r5.xyz, r5.xyzx, cb6[7].xyzx, cb6[11].xyzx
mov x0[3].xyz, r5.xyzx
mul r9.yw, cb6[14].zzzw, l(0.000000e+000, -3.460965e-001, 0.000000e+000, 3.284898e-001)
mad r3.w, -cb6[14].z, l(1.500000e+000), l(1.000000e+000)
mul r3.w, r3.w, l(5.000000e-001)
max r4.w, |r8.y|, |r8.x|
lt r4.w, r4.w, r3.w
movc r4.w, r4.w, l(2), l(3)
max r5.z, |r7.y|, |r7.x|
lt r5.z, r5.z, r3.w
movc r4.w, r5.z, l(1), r4.w
max r5.z, |r6.y|, |r6.x|
lt r3.w, r5.z, r3.w
movc r3.w, r3.w, l(0), r4.w
mov r6.xyz, x0[r3.w + 0].xyzx
itof r3.w, r3.w
add r4.w, r3.w, l(5.000000e-001)
mul r4.w, r4.w, l(2.500000e-001)
eq r7.xyzw, l(0.000000e+000, 1.000000e+000, 2.000000e+000, 3.000000e+000), r3.wwww
and r7.xyzw, r7.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
dp4 r3.w, r7.xyzw, cb6[12].xyzw
dp4 r5.z, r7.xyzw, cb6[13].xyzw
add r7.x, r6.x, l(5.000000e-001)
mad r7.y, r6.y, l(2.500000e-001), r4.w
ne r4.w, r3.w, l(0.000000e+000)
add r3.w, -r3.w, r6.z
deriv_rtx r8.xyw, r7.xyxy
deriv_rtx r8.z, r3.w
deriv_rty r10.xyz, r7.yxyy
deriv_rty r10.w, r3.w
mul r6.xy, r8.ywyy, r10.ywyy
mad r11.xy, r8.xzxx, r10.xzxx, -r6.xyxx
div r5.w, l(1.000000e+000, 1.000000e+000, 1.000000e+000, 1.000000e+000), r11.x
mul r6.x, r8.z, r10.y
mad r11.z, r8.x, r10.w, -r6.x
mul r6.xy, r5.wwww, r11.yzyy
max r6.xy, r6.xyxx, l(0.000000e+000, 0.000000e+000, 0.000000e+000, 0.000000e+000)
min r6.xy, r6.xyxx, l(5.000000e-001, 5.000000e-001, 0.000000e+000, 0.000000e+000)
mad r3.w, -r5.z, r6.x, r3.w
mad r3.w, -r5.z, r6.y, r3.w
movc r9.z, r4.w, r3.w, r6.z
mov r7.z, l(0)
add r6.xyz, r7.xyzx, r9.ywzy
mul r9.xy, cb6[14].zwzz, l(-7.992915e-001, 2.017406e-001, 0.000000e+000, 0.000000e+000)
add r8.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-3.117551e-002, 1.793378e-001, 0.000000e+000, 0.000000e+000)
add r10.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(5.147495e-001, 2.535025e-001, 0.000000e+000, 0.000000e+000)
add r11.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-7.286972e-002, 8.097341e-003, 0.000000e+000, 0.000000e+000)
add r12.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-9.697813e-001, 3.452161e-002, 0.000000e+000, 0.000000e+000)
add r13.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(5.455467e-001, 2.412854e-002, 0.000000e+000, 0.000000e+000)
add r14.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-2.890611e-002, -1.367846e-001, 0.000000e+000, 0.000000e+000)
add r15.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-4.795115e-001, -2.448329e-001, 0.000000e+000, 0.000000e+000)
add r16.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(7.587884e-001, -1.121092e-001, 0.000000e+000, 0.000000e+000)
add r17.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(3.393526e-001, -2.493278e-001, 0.000000e+000, 0.000000e+000)
add r18.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(1.070598e+000, 2.081226e-001, 0.000000e+000, 0.000000e+000)
add r19.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(1.294038e+000, -1.807768e-002, 0.000000e+000, 0.000000e+000)
add r20.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-7.475631e-001, -1.139743e-001, 0.000000e+000, 0.000000e+000)
add r21.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(9.477217e-001, -2.487635e-001, 0.000000e+000, 0.000000e+000)
add r22.xyz, r7.xyzx, r9.xyzx
mul r9.xy, cb6[14].zwzz, l(-1.343153e+000, -8.858406e-002, 0.000000e+000, 0.000000e+000)
add r7.xyz, r7.xyzx, r9.xyzx
sample_c_lz r6.x, r6.xyxx, t15.xxxx, s15, r6.z
sample_c_lz r6.y, r8.xyxx, t15.xxxx, s15, r8.z
sample_c_lz r6.z, r10.xyxx, t15.xxxx, s15, r10.z
sample_c_lz r6.w, r11.xyxx, t15.xxxx, s15, r11.z
sample_c_lz r8.x, r12.xyxx, t15.xxxx, s15, r12.z
sample_c_lz r8.y, r13.xyxx, t15.xxxx, s15, r13.z
sample_c_lz r8.z, r14.xyxx, t15.xxxx, s15, r14.z
sample_c_lz r8.w, r15.xyxx, t15.xxxx, s15, r15.z
sample_c_lz r9.x, r16.xyxx, t15.xxxx, s15, r16.z
sample_c_lz r9.y, r17.xyxx, t15.xxxx, s15, r17.z
sample_c_lz r9.z, r18.xyxx, t15.xxxx, s15, r18.z
sample_c_lz r9.w, r19.xyxx, t15.xxxx, s15, r19.z
sample_c_lz r10.x, r20.xyxx, t15.xxxx, s15, r20.z
sample_c_lz r10.y, r21.xyxx, t15.xxxx, s15, r21.z
sample_c_lz r10.z, r22.xyxx, t15.xxxx, s15, r22.z
sample_c_lz r10.w, r7.xyxx, t15.xxxx, s15, r7.z
add r6.xyzw, r6.xyzw, r8.xyzw
add r6.xyzw, r9.xyzw, r6.xyzw
add r6.xyzw, r10.xyzw, r6.xyzw
dp4 r3.w, r6.xyzw, l(1.000000e+000, 1.000000e+000, 1.000000e+000, 1.000000e+000)
mad_sat r2.w, r2.w, cb6[0].w, cb6[1].w
max r4.w, |r5.y|, |r5.x|
mad_sat r4.w, r4.w, l(1.500000e+001), l(-6.300000e+000)
add r2.w, -r2.w, l(1.000000e+000)
mul r2.w, r4.w, r2.w
mad r2.w, r3.w, l(6.250000e-002), r2.w
mul r2.xw, r2.xxxw, r2.xxxw
min r2.w, r2.w, l(1.000000e+000)
mad_sat r3.w, v2.z, cb6[3].x, cb6[3].y
sqrt r3.w, r3.w
mul r3.w, r3.w, cb6[3].z
mad r2.w, r3.w, -r2.w, r2.w
dp3_sat r3.w, r1.yzwy, -cb3[0].xyzx
dp3_sat r4.x, r4.xyzx, r1.yzwy
mul r4.yzw, r0.xxyz, r3.wwww
mul r4.yzw, r4.yyzw, cb3[1].xxyz
ige r3.w, l(0), cb3[2].x
if_z r3.w
  eq r5.x, cb3[19].w, l(0.000000e+000)
  add r5.yzw, -v2.xxyz, cb3[3].xxyz
  add r6.xyz, v2.xyzx, -cb3[3].xyzx
  dp3 r6.x, r6.xyzx, cb3[11].xyzx
  add r6.y, cb3[19].w, l(1.000000e-004)
  div_sat r6.x, r6.x, r6.y
  mul r6.x, r6.x, cb3[19].w
  mad r6.xyz, cb3[11].xyzx, r6.xxxx, cb3[3].xyzx
  add r6.xyz, r6.xyzx, -v2.xyzx
  movc r5.xyz, r5.xxxx, r5.yzwy, r6.xyzx
  dp3 r5.w, r5.xyzx, r5.xyzx
  add r5.xyz, r5.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r6.x, r5.xyzx, r5.xyzx
  rsq r6.x, r6.x
  mul r5.xyz, r5.xyzx, r6.xxxx
  mad_sat r5.w, -r5.w, cb3[3].w, l(1.000000e+000)
  add r6.x, -cb3[11].w, l(1.000000e+000)
  mad r6.x, r6.x, r5.w, cb3[11].w
  div r5.w, r5.w, r6.x
  dp3 r6.x, r5.xyzx, -cb3[11].xyzx
  mad_sat r6.x, r6.x, cb3[27].x, cb3[35].x
  dp3_sat r5.x, r5.xyzx, r1.yzwy
  mul r5.x, r6.x, r5.x
  mul r5.x, r5.w, r5.x
  mul r5.xyz, r5.xxxx, cb3[19].xyzx
  mul r5.xyz, r0.xyzx, r5.xyzx
else 
  mov r5.xyz, l(0,0,0,0)
endif 
ilt r5.w, l(0), cb3[2].x
if_nz r5.w
  ige r6.x, l(1), cb3[2].x
  or r5.w, r3.w, r5.w
  movc r3.w, r6.x, r5.w, r3.w
  if_z r3.w
    eq r5.w, cb3[20].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[4].xyzx
    add r7.xyz, v2.xyzx, -cb3[4].xyzx
    dp3 r6.w, r7.xyzx, cb3[12].xyzx
    add r7.x, cb3[20].w, l(1.000000e-004)
    div_sat r6.w, r6.w, r7.x
    mul r6.w, r6.w, cb3[20].w
    mad r7.xyz, cb3[12].xyzx, r6.wwww, cb3[4].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r5.wwww, r6.xyzx, r7.xyzx
    dp3 r5.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r6.w, r6.xyzx, r6.xyzx
    rsq r6.w, r6.w
    mul r6.xyz, r6.wwww, r6.xyzx
    mad_sat r5.w, -r5.w, cb3[4].w, l(1.000000e+000)
    add r6.w, -cb3[12].w, l(1.000000e+000)
    mad r6.w, r6.w, r5.w, cb3[12].w
    div r5.w, r5.w, r6.w
    dp3 r6.w, r6.xyzx, -cb3[12].xyzx
    mad_sat r6.w, r6.w, cb3[28].x, cb3[36].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r6.x, r6.w, r6.x
    mul r5.w, r5.w, r6.x
    mul r6.xyz, r5.wwww, cb3[20].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
else 
  mov r3.w, l(-1)
endif 
if_z r3.w
  ige r5.w, l(2), cb3[2].x
  or r3.w, r3.w, r5.w
  if_z r3.w
    eq r5.w, cb3[21].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[5].xyzx
    add r7.xyz, v2.xyzx, -cb3[5].xyzx
    dp3 r6.w, r7.xyzx, cb3[13].xyzx
    add r7.x, cb3[21].w, l(1.000000e-004)
    div_sat r6.w, r6.w, r7.x
    mul r6.w, r6.w, cb3[21].w
    mad r7.xyz, cb3[13].xyzx, r6.wwww, cb3[5].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r5.wwww, r6.xyzx, r7.xyzx
    dp3 r5.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r6.w, r6.xyzx, r6.xyzx
    rsq r6.w, r6.w
    mul r6.xyz, r6.wwww, r6.xyzx
    mad_sat r5.w, -r5.w, cb3[5].w, l(1.000000e+000)
    add r6.w, -cb3[13].w, l(1.000000e+000)
    mad r6.w, r6.w, r5.w, cb3[13].w
    div r5.w, r5.w, r6.w
    dp3 r6.w, r6.xyzx, -cb3[13].xyzx
    mad_sat r6.w, r6.w, cb3[29].x, cb3[37].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r6.x, r6.w, r6.x
    mul r5.w, r5.w, r6.x
    mul r6.xyz, r5.wwww, cb3[21].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
else 
  mov r3.w, l(-1)
endif 
if_z r3.w
  ige r5.w, l(3), cb3[2].x
  or r3.w, r3.w, r5.w
  if_z r3.w
    eq r5.w, cb3[22].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[6].xyzx
    add r7.xyz, v2.xyzx, -cb3[6].xyzx
    dp3 r6.w, r7.xyzx, cb3[14].xyzx
    add r7.x, cb3[22].w, l(1.000000e-004)
    div_sat r6.w, r6.w, r7.x
    mul r6.w, r6.w, cb3[22].w
    mad r7.xyz, cb3[14].xyzx, r6.wwww, cb3[6].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r5.wwww, r6.xyzx, r7.xyzx
    dp3 r5.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r6.w, r6.xyzx, r6.xyzx
    rsq r6.w, r6.w
    mul r6.xyz, r6.wwww, r6.xyzx
    mad_sat r5.w, -r5.w, cb3[6].w, l(1.000000e+000)
    add r6.w, -cb3[14].w, l(1.000000e+000)
    mad r6.w, r6.w, r5.w, cb3[14].w
    div r5.w, r5.w, r6.w
    dp3 r6.w, r6.xyzx, -cb3[14].xyzx
    mad_sat r6.w, r6.w, cb3[30].x, cb3[38].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r6.x, r6.w, r6.x
    mul r5.w, r5.w, r6.x
    mul r6.xyz, r5.wwww, cb3[22].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
else 
  mov r3.w, l(-1)
endif 
if_z r3.w
  ige r5.w, l(4), cb3[2].x
  or r3.w, r3.w, r5.w
  if_z r3.w
    eq r5.w, cb3[23].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[7].xyzx
    add r7.xyz, v2.xyzx, -cb3[7].xyzx
    dp3 r6.w, r7.xyzx, cb3[15].xyzx
    add r7.x, cb3[23].w, l(1.000000e-004)
    div_sat r6.w, r6.w, r7.x
    mul r6.w, r6.w, cb3[23].w
    mad r7.xyz, cb3[15].xyzx, r6.wwww, cb3[7].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r5.wwww, r6.xyzx, r7.xyzx
    dp3 r5.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r6.w, r6.xyzx, r6.xyzx
    rsq r6.w, r6.w
    mul r6.xyz, r6.wwww, r6.xyzx
    mad_sat r5.w, -r5.w, cb3[7].w, l(1.000000e+000)
    add r6.w, -cb3[15].w, l(1.000000e+000)
    mad r6.w, r6.w, r5.w, cb3[15].w
    div r5.w, r5.w, r6.w
    dp3 r6.w, r6.xyzx, -cb3[15].xyzx
    mad_sat r6.w, r6.w, cb3[31].x, cb3[39].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r6.x, r6.w, r6.x
    mul r5.w, r5.w, r6.x
    mul r6.xyz, r5.wwww, cb3[23].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
else 
  mov r3.w, l(-1)
endif 
if_z r3.w
  ige r5.w, l(5), cb3[2].x
  or r3.w, r3.w, r5.w
  if_z r3.w
    eq r5.w, cb3[24].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[8].xyzx
    add r7.xyz, v2.xyzx, -cb3[8].xyzx
    dp3 r6.w, r7.xyzx, cb3[16].xyzx
    add r7.x, cb3[24].w, l(1.000000e-004)
    div_sat r6.w, r6.w, r7.x
    mul r6.w, r6.w, cb3[24].w
    mad r7.xyz, cb3[16].xyzx, r6.wwww, cb3[8].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r5.wwww, r6.xyzx, r7.xyzx
    dp3 r5.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r6.w, r6.xyzx, r6.xyzx
    rsq r6.w, r6.w
    mul r6.xyz, r6.wwww, r6.xyzx
    mad_sat r5.w, -r5.w, cb3[8].w, l(1.000000e+000)
    add r6.w, -cb3[16].w, l(1.000000e+000)
    mad r6.w, r6.w, r5.w, cb3[16].w
    div r5.w, r5.w, r6.w
    dp3 r6.w, r6.xyzx, -cb3[16].xyzx
    mad_sat r6.w, r6.w, cb3[32].x, cb3[40].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r6.x, r6.w, r6.x
    mul r5.w, r5.w, r6.x
    mul r6.xyz, r5.wwww, cb3[24].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
else 
  mov r3.w, l(-1)
endif 
if_z r3.w
  ige r5.w, l(6), cb3[2].x
  or r3.w, r3.w, r5.w
  if_z r3.w
    eq r5.w, cb3[25].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[9].xyzx
    add r7.xyz, v2.xyzx, -cb3[9].xyzx
    dp3 r6.w, r7.xyzx, cb3[17].xyzx
    add r7.x, cb3[25].w, l(1.000000e-004)
    div_sat r6.w, r6.w, r7.x
    mul r6.w, r6.w, cb3[25].w
    mad r7.xyz, cb3[17].xyzx, r6.wwww, cb3[9].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r5.wwww, r6.xyzx, r7.xyzx
    dp3 r5.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r6.w, r6.xyzx, r6.xyzx
    rsq r6.w, r6.w
    mul r6.xyz, r6.wwww, r6.xyzx
    mad_sat r5.w, -r5.w, cb3[9].w, l(1.000000e+000)
    add r6.w, -cb3[17].w, l(1.000000e+000)
    mad r6.w, r6.w, r5.w, cb3[17].w
    div r5.w, r5.w, r6.w
    dp3 r6.w, r6.xyzx, -cb3[17].xyzx
    mad_sat r6.w, r6.w, cb3[33].x, cb3[41].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r6.x, r6.w, r6.x
    mul r5.w, r5.w, r6.x
    mul r6.xyz, r5.wwww, cb3[25].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
else 
  mov r3.w, l(-1)
endif 
if_z r3.w
  ige r5.w, l(7), cb3[2].x
  or r3.w, r3.w, r5.w
  if_z r3.w
    eq r3.w, cb3[26].w, l(0.000000e+000)
    add r6.xyz, -v2.xyzx, cb3[10].xyzx
    add r7.xyz, v2.xyzx, -cb3[10].xyzx
    dp3 r5.w, r7.xyzx, cb3[18].xyzx
    add r6.w, cb3[26].w, l(1.000000e-004)
    div_sat r5.w, r5.w, r6.w
    mul r5.w, r5.w, cb3[26].w
    mad r7.xyz, cb3[18].xyzx, r5.wwww, cb3[10].xyzx
    add r7.xyz, r7.xyzx, -v2.xyzx
    movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
    dp3 r3.w, r6.xyzx, r6.xyzx
    add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
    dp3 r5.w, r6.xyzx, r6.xyzx
    rsq r5.w, r5.w
    mul r6.xyz, r5.wwww, r6.xyzx
    mad_sat r3.w, -r3.w, cb3[10].w, l(1.000000e+000)
    add r5.w, -cb3[18].w, l(1.000000e+000)
    mad r5.w, r5.w, r3.w, cb3[18].w
    div r3.w, r3.w, r5.w
    dp3 r5.w, r6.xyzx, -cb3[18].xyzx
    mad_sat r5.w, r5.w, cb3[34].x, cb3[42].x
    dp3_sat r6.x, r6.xyzx, r1.yzwy
    mul r5.w, r5.w, r6.x
    mul r3.w, r3.w, r5.w
    mul r6.xyz, r3.wwww, cb3[26].xyzx
    mad r5.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  endif 
endif 
mad r4.yzw, r4.yyzw, r2.wwww, r5.xxyz
mad r1.x, v1.z, r1.x, cb3[43].w
mul r1.x, r1.x, cb3[44].w
max r1.x, r1.x, l(0.000000e+000)
mad r5.xyz, cb3[47].xyzx, r1.xxxx, cb3[48].xyzx
add r2.w, -cb2[13].z, l(1.000000e+000)
mad r6.xyz, cb3[45].xyzx, r1.xxxx, cb3[46].xyzx
mul r6.xyz, r6.xyzx, cb2[13].zzzz
mad r5.xyz, r5.xyzx, r2.wwww, r6.xyzx
mul r5.xyz, r2.xxxx, r5.xyzx
mad r6.xyz, cb3[43].xyzx, r1.xxxx, cb3[44].xyzx
mov r7.x, cb3[46].w
mov r7.y, cb3[47].w
mov r7.z, cb3[48].w
dp3_sat r1.x, r7.xyzx, r1.yzwy
mad r1.xyz, cb3[49].xyzx, r1.xxxx, r6.xyzx
mad r1.xyz, r1.xyzx, r2.zzzz, r5.xyzx
mad r1.xyz, r1.xyzx, r0.xyzx, r4.yzwy
mul r1.w, r2.y, r4.x
mad r0.xyz, r0.xyzx, r1.wwww, r1.xyzx
mul_sat r0.w, r0.w, cb2[12].x
dp3 r1.x, r3.xyzx, r3.xyzx
sqrt r1.y, r1.x
add r1.z, r1.y, -cb3[50].x
max r1.z, r1.z, l(0.000000e+000)
div r1.y, r1.z, r1.y
mul r1.y, r1.y, r3.z
mul r1.w, r1.y, cb3[52].z
lt r1.y, l(1.000000e-002), |r1.y|
mul r2.x, r1.w, l(-1.442695e+000)
exp r2.x, r2.x
add r2.x, -r2.x, l(1.000000e+000)
div r1.w, r2.x, r1.w
movc r1.y, r1.y, r1.w, l(1.000000)
mul r1.w, r1.z, cb3[51].w
mul r1.y, r1.y, r1.w
min r1.y, r1.y, l(1.000000e+000)
mul r1.y, r1.y, l(1.442695e+000)
exp r1.y, r1.y
min r1.y, r1.y, l(1.000000e+000)
add r1.y, -r1.y, l(1.000000e+000)
mul r1.w, r1.y, cb3[52].y
rsq r1.x, r1.x
mul r2.xyz, r1.xxxx, r3.xyzx
dp3_sat r1.x, r2.xyzx, cb3[54].xyzx
log r1.x, r1.x
mul r1.x, r1.x, cb3[54].w
exp r1.x, r1.x
dp3_sat r2.x, r2.xyzx, cb3[53].xyzx
log r2.x, r2.x
mul r2.x, r2.x, cb3[53].w
exp r2.x, r2.x
mad r1.y, -r1.y, cb3[52].y, l(1.000000e+000)
mul r1.y, r1.y, cb3[51].y
add r2.y, r1.z, -cb3[52].x
max r2.y, r2.y, l(0.000000e+000)
mul r2.y, r2.y, cb3[51].x
mul r2.y, r2.y, l(1.442695e+000)
exp r2.y, r2.y
add r2.y, -r2.y, l(1.000000e+000)
mad_sat r1.w, r1.y, r2.y, r1.w
mul r1.z, r1.z, -cb3[51].z
mul r1.z, r1.z, l(1.442695e+000)
exp r1.z, r1.z
add r1.z, -r1.z, l(1.000000e+000)
add r2.yzw, -cb3[56].xxyz, cb3[58].xxyz
mad r2.yzw, r1.xxxx, r2.yyzw, cb3[56].xxyz
add r3.xyz, -r2.yzwy, cb3[55].xyzx
mad r2.xyz, r2.xxxx, r3.xyzx, r2.yzwy
add r2.xyz, r2.xyzx, -cb3[57].xyzx
mad r2.xyz, r1.zzzz, r2.xyzx, cb3[57].xyzx
add r3.x, -r2.x, cb3[55].w
add r3.y, -r2.y, cb3[56].w
add r3.z, -r2.z, cb3[57].w
mad r1.xyz, r1.yyyy, r3.xyzx, r2.xyzx
lt r2.x, l(0.000000e+000), cb2[19].y
if_nz r2.x
  mul r2.xy, v5.xyxx, cb2[15].zwzz
  sample r2.xyzw, r2.xyxx, t11.xyzw, s11
  add r2.x, r2.x, l(-1.000000e+000)
  mad_sat r2.x, cb2[19].y, r2.x, l(1.000000e+000)
else 
  mov r2.x, l(1.000000)
endif 
mad r1.xyz, r1.xyzx, r2.xxxx, -r0.xyzx
mad r0.xyz, r1.wwww, r1.xyzx, r0.xyzx
mul o0.xyz, r0.xyzx, cb2[14].zzzz
lt r0.x, l(3.000000e-001), r0.w
and r0.x, r0.x, l(0x3f800000)
mul o1.x, r0.x, v0.z
mov o0.w, r0.w
mov o2.x, r0.x
ret