//Shadows PS 1.
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.181 on Sat Dec 23 18:45:04 2023
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float   xy
// TEXCOORD                 0   xyzw        1     NONE   float   xy w
// TEXCOORD                 1   xy          2     NONE   float
//
//
// 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[88], dynamicIndexed
dcl_sampler s0, mode_default
dcl_sampler s2, 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_resource_texture2d (float,float,float,float) t3
dcl_resource_texture2d (float,float,float,float) t5
dcl_input_ps_siv linear noperspective v0.xy, position
dcl_input_ps linear v1.xyw
dcl_output o0.xyzw
dcl_temps 36
dcl_indexableTemp x0[2], 4
dcl_indexableTemp x1[2], 4
dcl_indexableTemp x2[2], 4
dcl_indexableTemp x3[2], 4
dcl_indexableTemp x4[2], 4
dcl_indexableTemp x5[2], 4
dcl_indexableTemp x6[2], 4
dcl_indexableTemp x7[2], 4
dcl_indexableTemp x8[2], 4
dcl_indexableTemp x9[2], 4
dcl_indexableTemp x10[2], 4
dcl_indexableTemp x11[2], 4
dcl_indexableTemp x12[2], 4
dcl_indexableTemp x13[2], 4
dcl_indexableTemp x14[2], 4
dcl_indexableTemp x15[2], 4
dcl_resource_texture2d (float,float,float,float) t125
ld_indexable(texture2d)(float,float,float,float) r25.xyzw, l(0, 0, 0, 0), t125.xyzw
mul r0.xy, v0.xyxx, cb0[7].zwzz
sample_indexable(texture2d)(float,float,float,float) r0.zw, l(0.062500, 0.500000, 0.000000, 0.000000), t5.zwxy, s0
ne r1.x, v1.w, l(1.000000)
add r1.y, -r0.w, v1.w
mad r1.y, r0.z, r1.y, v1.x
movc r1.y, r1.x, r1.y, v1.x
mov r1.z, v1.y
div r1.xy, r1.yzyy, v1.wwww
mad r1.zw, r1.xxxy, l(0.000000, 0.000000, 0.500000, -0.500000), l(0.000000, 0.000000, 0.500000, 0.500000)
eq r2.x, cb0[39].x, l(1.000000)
movc r0.xy, r2.xxxx, r1.zwzz, r0.xyxx
mul r1.zw, cb0[5].zzzw, cb0[7].xxxy
mul r0.xy, r0.xyxx, r1.zwzz
eq r1.z, cb0[6].x, l(1.000000)
if_nz r1.z
  sample_l_indexable(texture2d)(float,float,float,float) r1.z, r0.xyxx, t1.zwxy, s0, l(0.000000)
else
  eq r2.x, cb0[6].y, l(1.000000)
  if_nz r2.x
    sample_l_indexable(texture2d)(float,float,float,float) r1.z, r0.xyxx, t1.zwyx, s0, l(0.000000)
  else
    eq r2.x, cb0[6].z, l(1.000000)
    if_nz r2.x
      sample_l_indexable(texture2d)(float,float,float,float) r1.z, r0.xyxx, t1.ywzx, s0, l(0.000000)
    else
      sample_l_indexable(texture2d)(float,float,float,float) r1.z, r0.xyxx, t1.yzwx, s0, l(0.000000)
    endif
  endif
endif
mov r1.w, l(1.000000)
dp2 r0.x, r1.zwzz, cb0[29].zwzz
dp2 r0.y, r1.zwzz, cb0[30].zwzz
div r2.z, r0.x, r0.y
mul r1.yz, r1.xxyx, |r2.zzzz|
ne r0.x, |r2.z|, l(1.000000)
add r0.y, -r0.w, |r2.z|
mad r0.y, -r0.z, r0.y, r1.y
movc r1.x, r0.x, r0.y, r1.y
mov r1.w, l(1.000000)
dp3 r2.x, r1.xzwx, cb0[27].xywx
dp3 r2.y, r1.xzwx, cb0[28].xywx
eq r0.x, cb0[84].w, l(1.000000)
add r0.y, -cb0[87].x, l(0.500000)
mul r0.z, r0.y, cb0[87].y
mad r0.y, -r0.y, cb0[87].y, r0.y
mov r2.w, l(1.000000)
mov r3.xyz, l(0,0,0,0)
mov r0.w, l(-1)
mov r1.xyzw, l(0,0,0,-1)
mov r4.xy, l(0,0,0,0)

add r26.x, r2.z, -r25.y
mul r26.x, r26.x, cb0[27].x
mad r2.x, -r25.x, r26.x, r2.x

loop
  itof r4.z, r4.y
  ge r4.z, r4.z, cb0[39].x
  breakc_nz r4.z
  ishl r4.z, r4.y, l(2)
  dp4 r5.x, r2.xyzw, cb0[r4.z + 40].xyzw
  dp4 r5.y, r2.xyzw, cb0[r4.z + 41].xyzw
  dp4 r5.z, r2.xyzw, cb0[r4.z + 42].xyzw
  dp4 r4.z, r2.xyzw, cb0[r4.z + 43].xyzw
  div r5.xyz, r5.xyzx, r4.zzzz
  add r4.z, r5.z, cb0[r4.y + 76].x
  min r4.z, r4.z, l(1.000000)
  add r4.w, -r4.z, l(1.000000)
  movc r5.w, r0.x, r4.w, r4.z
  add r4.zw, cb0[r4.y + 68].zzzw, cb0[r4.y + 68].xxxy
  lt r6.xy, cb0[r4.y + 68].xyxx, r5.xyxx
  lt r4.zw, r5.xxxy, r4.zzzw
  and r4.z, r4.z, r6.x
  and r4.z, r6.y, r4.z
  and r4.z, r4.w, r4.z
  if_nz r4.z
    add r4.zw, r5.xxxy, -cb0[r4.y + 68].xxxy
    div r4.zw, r4.zzzw, cb0[r4.y + 68].zzzw
    add r4.zw, r4.zzzw, l(0.000000, 0.000000, -0.500000, -0.500000)
    lt r6.xy, r0.yyyy, |r4.zwzz|
    or r5.z, r6.y, r6.x
    if_nz r5.z
      iadd r5.z, r4.y, l(1)
      itof r5.z, r5.z
      lt r5.z, r5.z, cb0[39].x
      iadd r1.w, r4.y, -r5.z
      ishl r5.z, r1.w, l(2)
      dp4 r6.x, r2.xyzw, cb0[r5.z + 40].xyzw
      dp4 r6.y, r2.xyzw, cb0[r5.z + 41].xyzw
      dp4 r6.z, r2.xyzw, cb0[r5.z + 42].xyzw
      dp4 r5.z, r2.xyzw, cb0[r5.z + 43].xyzw
      div r3.xyw, r6.xyxz, r5.zzzz
      add r3.w, r3.w, cb0[r1.w + 76].x
      min r3.w, r3.w, l(1.000000)
      add r5.z, -r3.w, l(1.000000)
      movc r3.z, r0.x, r5.z, r3.w
      add r6.xy, cb0[r1.w + 68].zwzz, cb0[r1.w + 68].xyxx
      add r6.zw, r3.xxxy, -cb0[r1.w + 68].xxxy
      div r6.zw, r6.zzzw, cb0[r1.w + 68].zzzw
      add r6.zw, r6.zzzw, l(0.000000, 0.000000, -0.500000, -0.500000)
      lt r7.xy, cb0[r1.w + 68].xyxx, r3.xyxx
      lt r6.xy, r3.xyxx, r6.xyxx
      and r3.w, r6.x, r7.x
      and r3.w, r7.y, r3.w
      and r3.w, r6.y, r3.w
      lt r6.xy, r0.yyyy, |r6.zwzz|
      or r5.z, r6.y, r6.x
      not r5.z, r5.z
      and r3.w, r3.w, r5.z
      if_nz r3.w
        ine r3.w, r4.y, r1.w
        if_nz r3.w
          add r4.zw, -r0.yyyy, |r4.zzzw|
          div r4.zw, r4.zzzw, r0.zzzz
          max_sat r4.x, r4.z, r4.w
        endif
      endif
    endif
    mov r1.xyz, r5.xywx
    mov r0.w, r4.y
    break
  endif
  iadd r4.y, r4.y, l(1)
  mov r1.xyz, r5.xywx
  mov r3.xyz, l(0,0,0,0)
  mov r0.w, l(-1)
  mov r1.w, l(-1)
  mov r4.x, l(0)
endloop
mul r0.yz, v0.xxyx, l(0.000000, 0.250000, 0.250000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r5.xyzw, r0.yzyy, t3.xyzw, s2
ine r0.y, r0.w, l(-1)
if_nz r0.y
  mov r2.w, l(1.000000)
  dp4 r0.y, r2.xyzw, cb0[37].xyzw
  movc r0.y, r0.x, -r0.y, r0.y
  eq r0.z, r4.x, l(0.000000)
  if_nz r0.z
    add r0.z, r0.y, cb0[r0.w + 80].x
    mul r3.w, r0.z, cb0[r0.w + 80].y
    eq r4.y, cb0[85].x, l(1.000000)
    if_nz r4.y
      mad r0.z, r0.z, cb0[r0.w + 80].y, -cb0[r0.w + 60].x
      div r0.z, r0.z, r3.w
      mul r4.zw, r0.zzzz, cb0[r0.w + 60].zzzw
    else
      mov r4.zw, cb0[r0.w + 60].zzzw
    endif
    mul r6.xyzw, r4.zwzw, cb0[87].zzzz
    mad r6.xyzw, -r6.xyzw, r5.xyxy, r4.zwzw
    add r4.zw, r1.xxxy, -cb0[8].zzzw
    mad r7.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r0.w + 68].xyxy
    mad r8.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r0.w + 68].zwzw
    add r8.xyzw, r8.xyzw, cb0[r0.w + 68].xyxy
    min r4.zw, r4.zzzw, r8.xxxy
    max r4.zw, r7.xxxy, r4.zzzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r4.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.x, |r4.w|, |r4.w|
    mul r9.x, r9.x, r9.x
    mul r9.z, |r4.w|, r9.x
    mul r9.y, r0.z, r9.z
    mov r9.x, l(1.000000)
    and r9.xyz, r4.zzzz, r9.xyzx
    mad r10.xyzw, cb0[8].zwzw, l(-1.000000, 0.000000, -1.000000, 1.000000), r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.w, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.w, r0.z
    lt r4.w, r0.z, r1.z
    add r9.w, -r0.z, r1.z
    div r9.w, r9.w, r1.z
    add r9.w, -r9.w, l(2.000000)
    mul r10.x, |r9.w|, |r9.w|
    mul r10.x, r10.x, r10.x
    mul r10.y, |r9.w|, r10.x
    mad r11.y, r0.z, r10.y, r9.y
    mad r11.z, |r9.w|, r10.x, r9.z
    movc r11.x, r4.z, l(2.000000), l(1.000000)
    movc r9.xyz, r4.wwww, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mad r10.xyzw, cb0[8].zwzw, l(0.000000, -1.000000, 0.000000, 1.000000), r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    min r4.zw, r1.xxxy, r8.zzzw
    max r4.zw, r7.xxxy, r4.zzzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r4.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mad r10.xyzw, cb0[8].zwzw, l(1.000000, -1.000000, 1.000000, 0.000000), r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    add r4.zw, r1.xxxy, cb0[8].zzzw
    min r4.zw, r8.xxxy, r4.zzzw
    max r4.zw, r7.xxxy, r4.zzzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r4.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r10.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
    mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r10.xyzw, r8.xyzw, r10.xyzw
    max r10.xyzw, r7.xyzw, r10.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r11.y, r0.z, r10.x, r9.y
    mad r11.z, |r4.w|, r9.w, r9.z
    add r11.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r11.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r10.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r9.w, |r4.w|, |r4.w|
    mul r9.w, r9.w, r9.w
    mul r10.x, |r4.w|, r9.w
    mad r10.y, r0.z, r10.x, r9.y
    mad r10.z, |r4.w|, r9.w, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
    mad r6.xyzw, r6.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
    min r6.xyzw, r8.xyzw, r6.xyzw
    max r6.xyzw, r7.xyzw, r6.xyzw
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r6.xyxx, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r6.x, |r4.w|, |r4.w|
    mul r6.x, r6.x, r6.x
    mul r6.y, |r4.w|, r6.x
    mad r10.y, r0.z, r6.y, r9.y
    mad r10.z, |r4.w|, r6.x, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r9.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    sample_l_indexable(texture2d)(float,float,float,float) r0.z, r6.zwzz, t2.yzxw, s0, l(0.000000)
    add r4.z, -r0.z, l(1.000000)
    movc r0.z, r0.x, r4.z, r0.z
    lt r4.z, r0.z, r1.z
    add r4.w, -r0.z, r1.z
    div r4.w, r4.w, r1.z
    add r4.w, -r4.w, l(2.000000)
    mul r6.x, |r4.w|, |r4.w|
    mul r6.x, r6.x, r6.x
    mul r6.y, |r4.w|, r6.x
    mad r10.y, r0.z, r6.y, r9.y
    mad r10.z, |r4.w|, r6.x, r9.z
    add r10.x, r9.x, l(1.000000)
    movc r6.xyz, r4.zzzz, r10.xyzx, r9.xyzx
    div r9.z, r6.y, r6.z
    eq r0.z, r6.x, l(0.000000)
    if_nz r0.z
      mov r4.z, l(1.000000)
    endif
    if_z r0.z
      ishl r0.z, r0.w, l(2)
      mad r9.xy, r1.xyxx, l(2.000000, -2.000000, 0.000000, 0.000000), l(-1.000000, 1.000000, 0.000000, 0.000000)
      mov r9.w, l(1.000000)
      dp4 r4.w, r9.xyzw, cb0[r0.z + 13].xyzw
      dp4 r0.z, r9.xyzw, cb0[r0.z + 14].xyzw
      div r0.z, r4.w, r0.z
      add r0.z, r0.z, cb0[r0.w + 80].x
      mul r6.xy, cb0[86].xxxx, cb0[r0.w + 60].zwzz
      mad r0.z, -r0.z, cb0[r0.w + 80].y, r3.w
      min r0.z, r0.z, cb0[85].w
      div r0.z, r0.z, cb0[85].z
      mad r6.zw, -cb0[r0.w + 60].zzzw, cb0[86].xxxx, cb0[r0.w + 60].zzzw
      mad r6.xy, r0.zzzz, r6.zwzz, r6.xyxx
      if_nz r4.y
        div r3.w, cb0[r0.w + 60].x, r3.w
        mul r6.xy, r3.wwww, r6.xyxx
      endif
      mul r9.xyzw, r6.xyxy, cb0[87].wwww
      mad r6.xyzw, -r9.xyzw, r5.zwzw, r6.xyxy
      if_z r0.w
        mul r9.xyzw, r6.zwzw, cb0[64].xyxy
        mul r10.xyzw, cb0[86].yyyy, l(-7.19990158, -8.579733, -2.58234143, -6.140668)
        exp r10.xyzw, r10.xyzw
        div r3.w, r0.z, cb0[86].z
        add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r10.xyzw, r3.wwww, r11.xyzw, r10.xyzw
        mad r11.xyzw, r9.zwzw, l(-0.520550, -0.845855, -0.751771, -0.655454), r1.xyxy
        mad r12.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].xyxy
        mad r13.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].zwzw
        add r13.xyzw, r13.xyzw, cb0[68].xyxy
        min r11.xyzw, r11.xyzw, r13.xyzw
        max r11.xyzw, r12.xyzw, r11.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r4.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
        add r4.w, -r4.y, l(1.000000)
        movc r4.y, r0.x, r4.w, r4.y
        add r4.y, r1.z, -r4.y
        mul r4.w, r1.z, cb0[84].z
        lt r4.y, r4.w, r4.y
        movc r4.y, r4.y, l(0), l(1.000000)
        sample_l_indexable(texture2d)(float,float,float,float) r11.x, r11.zwzz, t0.xyzw, s0, l(0.000000)
        add r11.y, -r11.x, l(1.000000)
        movc r11.x, r0.x, r11.y, r11.x
        add r11.x, r1.z, -r11.x
        lt r11.x, r4.w, r11.x
        movc r11.x, r11.x, l(0), l(1.000000)
        mad r14.xyzw, r9.zwzw, l(-0.678021, -0.483970, -0.854925, -0.490874), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r11.y, r14.xyxx, t0.yxzw, s0, l(0.000000)
        add r11.z, -r11.y, l(1.000000)
        movc r11.y, r0.x, r11.z, r11.y
        add r11.y, r1.z, -r11.y
        lt r11.y, r4.w, r11.y
        movc r11.y, r11.y, l(0), l(1.000000)
        mul r11.y, r10.z, r11.y
        mad r4.y, r4.y, r10.x, r11.y
        sample_l_indexable(texture2d)(float,float,float,float) r11.y, r14.zwzz, t0.yxzw, s0, l(0.000000)
        add r11.z, -r11.y, l(1.000000)
        movc r11.y, r0.x, r11.z, r11.y
        add r11.y, r1.z, -r11.y
        lt r11.y, r4.w, r11.y
        movc r11.y, r11.y, l(0), l(1.000000)
        mul r11.y, r10.w, r11.y
        mad r11.x, r11.x, r10.y, r11.y
        add r10.xy, r10.zwzz, r10.xyxx
        mul r14.xyzw, cb0[86].yyyy, l(-2.31478643, -2.89526725, -3.05039549, -3.991754)
        exp r14.xyzw, r14.xyzw
        add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r14.xyzw, r3.wwww, r15.xyzw, r14.xyzw
        mad r15.xyzw, r9.zwzw, l(-0.792431, 0.102304, -0.761083, 0.412305), r1.xyxy
        min r15.xyzw, r13.xyzw, r15.xyzw
        max r15.xyzw, r12.xyzw, r15.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.xyxx, t0.yzxw, s0, l(0.000000)
        add r10.w, -r10.z, l(1.000000)
        movc r10.z, r0.x, r10.w, r10.z
        add r10.z, r1.z, -r10.z
        lt r10.z, r4.w, r10.z
        movc r10.z, r10.z, l(0), l(1.000000)
        mad r4.y, r10.z, r14.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.zwzz, t0.yzxw, s0, l(0.000000)
        add r10.w, -r10.z, l(1.000000)
        movc r10.z, r0.x, r10.w, r10.z
        add r10.z, r1.z, -r10.z
        lt r10.z, r4.w, r10.z
        movc r10.z, r10.z, l(0), l(1.000000)
        mad r10.z, r10.z, r14.y, r11.x
        add r10.xy, r10.xyxx, r14.xyxx
        mad r11.xyzw, r9.zwzw, l(-0.516157, 0.711853, -0.700168, 0.622896), r1.xyxy
        min r11.xyzw, r13.xyzw, r11.xyzw
        max r11.xyzw, r12.xyzw, r11.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r11.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r14.z, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r11.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r14.w, r10.z
        add r10.xy, r14.zwzz, r10.xyxx
        mul r11.xyzw, cb0[86].yyyy, l(-1.642316, -3.31069326, -1.56545961, -0.724846363)
        exp r11.xyzw, r11.xyzw
        add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
        mad r14.xyzw, r9.zwzw, l(-0.355834, -0.579066, -0.233941, -0.868254), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.y, r10.z
        add r10.xy, r10.xyxx, r11.xyxx
        mad r14.xyzw, r9.zwzw, l(-0.490482, -0.444796, -0.319092, -0.232716), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.z, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.w, r10.z
        add r10.xy, r11.zwzz, r10.xyxx
        mul r11.xyzw, cb0[86].yyyy, l(-1.007788, -1.02969921, -1.71244168, -6.181365)
        exp r11.xyzw, r11.xyzw
        add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
        mad r14.xyzw, r9.zwzw, l(-0.273454, 0.421808, -0.400938, 0.315500), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.y, r10.z
        add r10.xy, r10.xyxx, r11.xyxx
        mad r14.xyzw, r9.zwzw, l(-0.275007, 0.638120, -0.458971, 0.872913), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.z, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.w, r10.z
        add r10.xy, r11.zwzz, r10.xyxx
        mul r11.xyzw, cb0[86].yyyy, l(-5.08163738, -5.330224, -0.879165471, -0.595332325)
        exp r11.xyzw, r11.xyzw
        add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
        mad r14.xyzw, r9.zwzw, l(0.099781, -0.965326, 0.334974, -0.915804), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.y, r10.z
        add r10.xy, r10.xyxx, r11.xyxx
        mad r14.xyzw, r9.zwzw, l(0.077748, -0.449646, 0.156905, -0.299496), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.z, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.w, r10.z
        add r10.xy, r11.zwzz, r10.xyxx
        mul r11.xyzw, cb0[86].yyyy, l(-0.826701760, -0.270535439, -6.51378965, -6.92056370)
        exp r11.xyzw, r11.xyzw
        add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
        mad r14.xyzw, r9.zwzw, l(0.211989, 0.381204, 0.086743, 0.147352), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.y, r10.z
        add r10.xy, r10.xyxx, r11.xyxx
        mad r14.xyzw, r9.zwzw, l(0.047982, 0.987892, 0.264924, 0.955706), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.z, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.w, r10.z
        add r10.xy, r11.zwzz, r10.xyxx
        mul r11.xyzw, cb0[86].yyyy, l(-6.25430250, -6.557017, -8.892467, -1.43309534)
        exp r11.xyzw, r11.xyzw
        add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
        mad r14.xyzw, r9.zwzw, l(0.736900, -0.656468, 0.891683, -0.428688), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.y, r10.z
        add r10.xy, r10.xyxx, r11.xyxx
        mad r14.xyzw, r9.zwzw, l(0.996095, -0.059922, 0.508179, 0.371795), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.z, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.w, r10.z
        add r10.xy, r11.zwzz, r10.xyxx
        mul r11.xyzw, cb0[86].yyyy, l(-3.670727, -7.835936, -7.05661964, -5.628084)
        exp r11.xyzw, r11.xyzw
        add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
        mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
        mad r14.xyzw, r9.zwzw, l(0.799534, 0.458109, 0.757355, 0.646281), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.x, r4.y
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r14.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r14.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.y, r10.z
        add r10.xy, r10.xyxx, r11.xyxx
        mad r14.xyzw, r9.zwzw, l(0.618847, 0.775926, -0.945555, -0.256700), r1.xyxy
        min r14.xyzw, r13.xyzw, r14.xyzw
        max r14.xyzw, r12.xyzw, r14.xyzw
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r4.y, r10.w, r11.z, r4.y
        mov x0[0].x, r4.y
        add r10.xy, r11.zwzz, r10.xyxx
        mov x1[0].x, r10.x
        sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
        add r11.x, -r10.w, l(1.000000)
        movc r10.w, r0.x, r11.x, r10.w
        add r10.w, r1.z, -r10.w
        lt r10.w, r4.w, r10.w
        movc r10.w, r10.w, l(0), l(1.000000)
        mad r10.z, r10.w, r11.w, r10.z
        mov x0[1].x, r10.z
        mov x1[1].x, r10.y
        div r10.w, r4.y, r10.x
        div r11.x, r10.z, r10.y
        add r10.w, r10.w, -r11.x
        ge r10.w, cb0[86].w, |r10.w|
        if_z r10.w
          mul r11.xyzw, cb0[86].yyyy, l(-2.858026, -1.79378712, -2.96656418, -2.513609)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.787474, -0.350792, -0.570386, 0.425458), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.834992, 0.251581, -0.497132, -0.658249), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-2.37573552, -1.10526347, -0.803203702, -0.611408174)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.324060, -0.739428, -0.322221, -0.427310), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.413079, -0.107845, -0.175731, 0.297404), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-0.954242408, -2.72319531, -1.61956906, -3.85246587)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.072165, 0.478476, -0.261705, 0.807197), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.401925, 0.541754, 0.457626, -0.810501), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-2.325746, -0.932220578, -0.230742186, -1.12492311)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.481411, -0.639601, 0.292735, -0.375278), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.009136, -0.147521, 0.498175, 0.212168), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-0.845245, -2.57143140, -1.46358633, -2.53469944)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.341249, 0.283087, 0.458700, 0.693847), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.012386, 0.637289, 0.712021, -0.421494), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-1.67824161, -3.67468786, -2.04183936, -2.84555030)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.514875, -0.455643, 0.876284, 0.285730), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.677064, 0.338902, 0.604616, 0.612818), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-2.93084764, -2.16161823, -1.428795, -4.45605373)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.865207, -0.079617, -0.753249, -0.188573), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.594055, 0.205390, -0.951743, 0.071686), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-1.51467049, -1.35937870, -0.454479277, -0.786625087)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.205326, -0.616743, -0.048028, -0.608357), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r4.y, r14.x, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r14.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r14.y, -r14.x, l(1.000000)
          movc r14.x, r0.x, r14.y, r14.x
          add r14.x, r1.z, -r14.x
          lt r14.x, r4.w, r14.x
          movc r14.x, r14.x, l(0), l(1.000000)
          mad r10.z, r14.x, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.265306, -0.051333, -0.095825, -0.409232), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.xyxx, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r4.y, r11.x, r11.z, r4.y
          mov x0[0].x, r4.y
          add r10.xy, r11.zwzz, r10.xyxx
          mov x1[0].x, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r10.z, r11.x, r11.w, r10.z
          mov x0[1].x, r10.z
          mov x1[1].x, r10.y
          div r4.y, r4.y, r10.x
          div r10.x, r10.z, r10.y
          add r4.y, r4.y, -r10.x
          ge r4.y, cb0[86].w, |r4.y|
          or r4.y, r10.w, r4.y
        else
          mov r4.y, l(-1)
        endif
        if_z r4.y
          mul r10.xyzw, cb0[86].yyyy, l(-0.454922915, -0.488759756, -3.00368571, -2.19938278)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r3.wwww, r11.xyzw, r10.xyzw
          mad r11.xyzw, r9.zwzw, l(-0.016320, 0.269958, -0.249026, 0.143399), r1.xyxy
          min r11.xyzw, r13.xyzw, r11.xyzw
          max r11.xyzw, r12.xyzw, r11.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r4.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
          add r11.x, -r4.y, l(1.000000)
          movc r4.y, r0.x, r11.x, r4.y
          add r4.y, r1.z, -r4.y
          lt r4.y, r4.w, r4.y
          movc r4.y, r4.y, l(0), l(1.000000)
          mov r11.x, x0[0].x
          mad r4.y, r4.y, r10.x, r11.x
          mov r11.x, x1[0].x
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r11.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mov r11.y, x0[1].x
          mad r11.x, r11.x, r10.y, r11.y
          mov r11.y, x1[1].x
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(-0.077402, 0.871890, 0.320827, -0.713453), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.y, r14.xyxx, t0.yxzw, s0, l(0.000000)
          add r11.z, -r11.y, l(1.000000)
          movc r11.y, r0.x, r11.z, r11.y
          add r11.y, r1.z, -r11.y
          lt r11.y, r4.w, r11.y
          movc r11.y, r11.y, l(0), l(1.000000)
          mad r4.y, r11.y, r10.z, r4.y
          add r10.x, r10.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.z, r14.zwzz, t0.yzxw, s0, l(0.000000)
          add r11.y, -r10.z, l(1.000000)
          movc r10.z, r0.x, r11.y, r10.z
          add r10.z, r1.z, -r10.z
          lt r10.z, r4.w, r10.z
          movc r10.z, r10.z, l(0), l(1.000000)
          mad r10.z, r10.z, r10.w, r11.x
          add r10.y, r10.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-2.64347386, -0.213732481, -0.532696843, -0.526722968)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.176208, -0.821267, 0.137687, -0.001624), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(0.300395, -0.071291, 0.273251, 0.137443), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          add r10.x, r11.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.y, r11.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-0.841880858, -2.84530139, -4.22661066, -3.85716414)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.438788, 0.053885, 0.126562, 0.851497), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(0.421608, 0.847508, 0.893173, -0.262668), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          add r10.x, r11.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.y, r11.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-2.67585087, -2.05042386, -3.10861135, -1.78108454)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.837432, -0.101072, 0.734523, 0.189552), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(0.880797, 0.075944, -0.708420, -0.029535), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          add r10.x, r11.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.y, r11.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-1.43741608, -2.969294, -0.427928865, -0.981529)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.555554, -0.298719, -0.045759, -0.871110), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(-0.138755, -0.215934, -0.488585, 0.069882), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          add r10.x, r11.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.y, r11.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-0.183740988, -1.48677206, -1.46949327, -0.856197476)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.112210, 0.041340, 0.138922, -0.628008), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(0.317340, -0.554506, 0.375213, -0.244039), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          add r10.x, r11.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.y, r11.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-1.73866272, -1.12745857, -1.98774683, -1.304964)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.256567, 0.651665, 0.135182, 0.525159), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          add r10.x, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r14.xyzw, r9.zwzw, l(0.701911, -0.258122, 0.549497, -0.228906), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          add r10.x, r11.z, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.y, r11.w, r10.y
          mul r11.xyzw, cb0[86].yyyy, l(-1.35949278, -1.304402, -1.39065552, -1.56391883)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.605768, 0.074079, -0.582759, -0.120620), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r3.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r10.w, -r3.w, l(1.000000)
          movc r3.w, r0.x, r10.w, r3.w
          add r3.w, r1.z, -r3.w
          lt r3.w, r4.w, r3.w
          movc r3.w, r3.w, l(0), l(1.000000)
          mad r3.w, r3.w, r11.x, r4.y
          add r4.y, r10.x, r11.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.x, r14.zwzz, t0.xyzw, s0, l(0.000000)
          add r10.w, -r10.x, l(1.000000)
          movc r10.x, r0.x, r10.w, r10.x
          add r10.x, r1.z, -r10.x
          lt r10.x, r4.w, r10.x
          movc r10.x, r10.x, l(0), l(1.000000)
          mad r10.x, r10.x, r11.y, r10.z
          add r10.y, r10.y, r11.y
          mad r9.xyzw, r9.xyzw, l(0.351929, 0.508746, 0.653662, -0.103267), r1.xyxy
          min r9.xyzw, r13.xyzw, r9.xyzw
          max r9.xyzw, r12.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.w, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r11.z, r3.w
          mov x0[0].x, r3.w
          add r3.w, r11.z, r4.y
          mov x1[0].x, r3.w
          sample_l_indexable(texture2d)(float,float,float,float) r3.w, r9.zwzz, t0.yzwx, s0, l(0.000000)
          add r4.y, -r3.w, l(1.000000)
          movc r3.w, r0.x, r4.y, r3.w
          add r3.w, r1.z, -r3.w
          lt r3.w, r4.w, r3.w
          movc r3.w, r3.w, l(0), l(1.000000)
          mad r3.w, r3.w, r11.w, r10.x
          mov x0[1].x, r3.w
          add r3.w, r11.w, r10.y
          mov x1[1].x, r3.w
        endif
        mov r3.w, x0[0].x
        mov r4.y, x0[1].x
        add r3.w, r3.w, r4.y
        mov r4.y, x1[0].x
        mov r4.w, x1[1].x
        add r4.y, r4.w, r4.y
        div r4.z, r3.w, r4.y
      else
        ieq r3.w, r0.w, l(1)
        if_nz r3.w
          mul r9.xyzw, r6.zwzw, cb0[65].xyxy
          mul r10.xyzw, cb0[86].yyyy, l(-4.31136370, -3.52627683, -1.25792563, -1.55836809)
          exp r10.xyzw, r10.xyzw
          div r3.w, r0.z, cb0[86].z
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r3.wwww, r11.xyzw, r10.xyzw
          mad r11.xyzw, r9.zwzw, l(-0.554247, -0.771111, -0.739494, -0.535813), r1.xyxy
          mad r12.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].xyxy
          mad r13.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].zwzw
          add r13.xyzw, r13.xyzw, cb0[69].xyxy
          min r11.xyzw, r11.xyzw, r13.xyzw
          max r11.xyzw, r12.xyzw, r11.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r4.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
          add r4.w, -r4.y, l(1.000000)
          movc r4.y, r0.x, r4.w, r4.y
          add r4.y, r1.z, -r4.y
          mul r4.w, r1.z, cb0[84].z
          lt r4.y, r4.w, r4.y
          movc r4.y, r4.y, l(0), l(1.000000)
          sample_l_indexable(texture2d)(float,float,float,float) r11.x, r11.zwzz, t0.xyzw, s0, l(0.000000)
          add r11.y, -r11.x, l(1.000000)
          movc r11.x, r0.x, r11.y, r11.x
          add r11.x, r1.z, -r11.x
          lt r11.x, r4.w, r11.x
          movc r11.x, r11.x, l(0), l(1.000000)
          mad r14.xyzw, r9.zwzw, l(-0.581835, -0.004852, -0.617420, -0.234535), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.y, r14.xyxx, t0.yxzw, s0, l(0.000000)
          add r11.z, -r11.y, l(1.000000)
          movc r11.y, r0.x, r11.z, r11.y
          add r11.y, r1.z, -r11.y
          lt r11.y, r4.w, r11.y
          movc r11.y, r11.y, l(0), l(1.000000)
          mul r11.y, r10.z, r11.y
          mad r4.y, r4.y, r10.x, r11.y
          sample_l_indexable(texture2d)(float,float,float,float) r11.y, r14.zwzz, t0.yxzw, s0, l(0.000000)
          add r11.z, -r11.y, l(1.000000)
          movc r11.y, r0.x, r11.z, r11.y
          add r11.y, r1.z, -r11.y
          lt r11.y, r4.w, r11.y
          movc r11.y, r11.y, l(0), l(1.000000)
          mul r11.y, r10.w, r11.y
          mad r11.x, r11.x, r10.y, r11.y
          add r10.xy, r10.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-1.93653631, -2.47095561, -4.553454, -2.50024080)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r3.wwww, r15.xyzw, r14.xyzw
          mad r15.xyzw, r9.zwzw, l(-0.681692, 0.284707, -0.812983, 0.104160), r1.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.xyxx, t0.yzxw, s0, l(0.000000)
          add r10.w, -r10.z, l(1.000000)
          movc r10.z, r0.x, r10.w, r10.z
          add r10.z, r1.z, -r10.z
          lt r10.z, r4.w, r10.z
          movc r10.z, r10.z, l(0), l(1.000000)
          mad r4.y, r10.z, r14.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.zwzz, t0.yzxw, s0, l(0.000000)
          add r10.w, -r10.z, l(1.000000)
          movc r10.z, r0.x, r10.w, r10.z
          add r10.z, r1.z, -r10.z
          lt r10.z, r4.w, r10.z
          movc r10.z, r10.z, l(0), l(1.000000)
          mad r10.z, r10.z, r14.y, r11.x
          add r10.xy, r10.xyxx, r14.xyxx
          mad r11.xyzw, r9.zwzw, l(-0.607105, 0.847591, -0.601184, 0.562426), r1.xyxy
          min r11.xyzw, r13.xyzw, r11.xyzw
          max r11.xyzw, r12.xyzw, r11.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r11.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r14.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r11.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-4.74890566, -2.08656836, -0.674442112, -0.563664)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.023469, -0.962523, -0.123936, -0.754448), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.004852, -0.373394, -0.183569, -0.266274), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-0.901273072, -0.228480220, -2.20538688, -5.671054)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(-0.061067, 0.460555, -0.085910, 0.118625), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(-0.221656, 0.751152, -0.275979, 0.981567), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-2.09949541, -4.05256033, -0.993613303, -1.25950646)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.404157, -0.651479, 0.320597, -0.883358), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.465560, -0.176183, 0.410443, -0.413068), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-0.814901173, -0.939830, -1.95053983, -3.42842364)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.413556, 0.123325, 0.353557, 0.322733), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.492660, 0.553880, 0.266579, 0.867061), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-2.98889518, -2.22883439, -6.24990940, -2.74358654)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.933348, -0.629810, 0.863582, -0.852290), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.920530, -0.355693, 0.849300, -0.048555), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          add r10.xy, r11.zwzz, r10.xyxx
          mul r11.xyzw, cb0[86].yyyy, l(-4.868580, -2.09602141, -3.33378029, -2.11065435)
          exp r11.xyzw, r11.xyzw
          add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
          mad r14.xyzw, r9.zwzw, l(0.952940, 0.156896, 0.691031, 0.330729), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r14.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r14.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.y, r10.z
          add r10.xy, r10.xyxx, r11.xyxx
          mad r14.xyzw, r9.zwzw, l(0.898068, 0.633778, 0.890622, 0.850581), r1.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.y, r10.w, r11.z, r4.y
          mov x2[0].x, r4.y
          add r10.xy, r11.zwzz, r10.xyxx
          mov x3[0].x, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.x, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.x, r10.w
          add r10.w, r1.z, -r10.w
          lt r10.w, r4.w, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r11.w, r10.z
          mov x2[1].x, r10.z
          mov x3[1].x, r10.y
          div r10.w, r4.y, r10.x
          div r11.x, r10.z, r10.y
          add r10.w, r10.w, -r11.x
          lt r10.w, cb0[86].w, |r10.w|
          if_nz r10.w
            mul r11.xyzw, cb0[86].yyyy, l(-3.340066, -2.93286467, -3.71318436, -7.903147)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(-0.786126, -0.767632, -0.822138, -0.281655), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(-0.918943, -0.094150, -0.934812, 0.366741), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-1.96691215, -3.77197456, -2.417392, -3.47431779)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(-0.835200, 0.937803, -0.873226, 0.623890), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(-0.341594, -0.737541, -0.483383, -0.976928), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-1.07460284, -0.362947851, -0.695641100, -0.693262100)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(-0.204932, -0.483566, -0.214393, -0.059236), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(-0.230811, 0.305094, -0.367534, 0.102451), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-1.645441, -1.18442786, -1.92146969, -0.611149)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(-0.353130, 0.581530, 0.181860, -0.529649), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(0.087741, -0.730766, 0.188208, -0.289529), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-0.137389123, -0.362524211, -0.549391091, -1.371425)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(0.035981, -0.083407, 0.212928, 0.063509), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(0.145970, 0.281045, 0.236610, 0.566027), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-2.062181, -3.34212351, -4.833588, -2.24719357)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(0.021332, 0.760247, 0.637135, -0.637623), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(0.535875, -0.885556, 0.686331, -0.389935), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-1.733622, -1.39554238, -2.12258387, -5.77069855)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(0.677236, -0.174291, 0.615894, 0.070345), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r14.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r14.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r14.xyzw, r9.zwzw, l(0.715629, 0.999939, 0.676260, 0.711600), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.y, r10.w, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r14.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.x, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.x, r10.w
            add r10.w, r1.z, -r10.w
            lt r10.w, r4.w, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r11.w, r10.z
            add r10.xy, r11.zwzz, r10.xyxx
            mul r11.xyzw, cb0[86].yyyy, l(-0.851650417, -1.39399922, -1.217193, -6.313437)
            exp r11.xyzw, r11.xyzw
            add r14.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r14.xyzw, r11.xyzw
            mad r14.xyzw, r9.zwzw, l(-0.409772, -0.175695, -0.476669, -0.395672), r1.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r14.xyxx, t0.yzwx, s0, l(0.000000)
            add r10.w, -r3.w, l(1.000000)
            movc r3.w, r0.x, r10.w, r3.w
            add r3.w, r1.z, -r3.w
            lt r3.w, r4.w, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r3.w, r3.w, r11.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r14.zwzz, t0.yxzw, s0, l(0.000000)
            add r10.w, -r4.y, l(1.000000)
            movc r4.y, r0.x, r10.w, r4.y
            add r4.y, r1.z, -r4.y
            lt r4.y, r4.w, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mad r4.y, r4.y, r11.y, r10.z
            add r10.xy, r10.xyxx, r11.xyxx
            mad r9.xyzw, r9.xyzw, l(-0.439802, 0.362407, 0.506333, 0.876888), r1.xyxy
            min r9.xyzw, r13.xyzw, r9.xyzw
            max r9.xyzw, r12.xyzw, r9.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.y, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.y, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r4.w, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r3.w, r9.x, r11.z, r3.w
            mov x2[0].x, r3.w
            add r9.xy, r11.zwzz, r10.xyxx
            mov x3[0].x, r9.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r9.zwzz, t0.yzwx, s0, l(0.000000)
            add r9.x, -r3.w, l(1.000000)
            movc r3.w, r0.x, r9.x, r3.w
            add r3.w, r1.z, -r3.w
            lt r3.w, r4.w, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r3.w, r3.w, r11.w, r4.y
            mov x2[1].x, r3.w
            mov x3[1].x, r9.y
          endif
          mov r3.w, x2[0].x
          mov r4.y, x2[1].x
          add r3.w, r3.w, r4.y
          mov r4.y, x3[0].x
          mov r4.w, x3[1].x
          add r4.y, r4.w, r4.y
          div r4.z, r3.w, r4.y
        else
          mul r9.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
          mul r10.xyzw, cb0[86].yyyy, l(-3.15952015, -1.38548744, -6.94438553, -1.06862068)
          exp r10.xyzw, r10.xyzw
          div r0.z, r0.z, cb0[86].z
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r3.w, r9.xyxx, t0.yzwx, s0, l(0.000000)
          add r4.y, -r3.w, l(1.000000)
          movc r3.w, r0.x, r4.y, r3.w
          add r3.w, r1.z, -r3.w
          mul r4.y, r1.z, cb0[84].z
          lt r3.w, r4.y, r3.w
          movc r3.w, r3.w, l(0), l(1.000000)
          sample_l_indexable(texture2d)(float,float,float,float) r4.w, r9.zwzz, t0.yzwx, s0, l(0.000000)
          add r9.x, -r4.w, l(1.000000)
          movc r4.w, r0.x, r9.x, r4.w
          add r4.w, r1.z, -r4.w
          lt r4.w, r4.y, r4.w
          movc r4.w, r4.w, l(0), l(1.000000)
          mul r4.w, r10.y, r4.w
          mad r3.w, r3.w, r10.x, r4.w
          add r4.w, r10.y, r10.x
          mul r9.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
          mul r10.xyzw, cb0[86].yyyy, l(-1.86925554, -3.26677227, -2.21088624, -3.31532168)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.x, r3.w
          add r4.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.y, r3.w
          add r4.w, r10.y, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
          mul r10.xyzw, cb0[86].yyyy, l(-2.65607238, -0.509738743, -0.396726757, -1.48935831)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.x, r3.w
          add r4.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.y, r3.w
          add r4.w, r10.y, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
          mul r10.xyzw, cb0[86].yyyy, l(-3.700013, -1.88057292, -6.43597031, -1.007971)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.x, r3.w
          add r4.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.y, r3.w
          add r4.w, r10.y, r4.w
          mul r9.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
          mul r10.xyzw, cb0[86].yyyy, l(-0.818598330, -0.207658067, -1.42133641, -1.874704)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.x, r3.w
          add r4.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.y, r3.w
          add r4.w, r10.y, r4.w
          mul r9.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
          mul r10.xyzw, cb0[86].yyyy, l(-3.30185962, -2.06184530, -3.57361269, -1.25295591)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.x, r3.w
          add r4.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.y, r3.w
          add r4.w, r10.y, r4.w
          mul r9.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
          mul r10.xyzw, cb0[86].yyyy, l(-2.69696546, -3.500330, -5.50587749, -3.47976851)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.x, r3.w
          add r4.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.y, r3.w
          add r4.w, r10.y, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.z, r3.w
          add r4.w, r10.z, r4.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r4.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r3.w, r9.x, r10.w, r3.w
          add r4.w, r10.w, r4.w
          mul r9.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
          mul r10.xyzw, cb0[86].yyyy, l(-4.287428, -1.03613436, -0.570473433, -4.38599825)
          exp r10.xyzw, r10.xyzw
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r0.zzzz, r11.xyzw, r10.xyzw
          mad r9.xyzw, r9.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r9.xyzw, r8.xyzw, r9.xyzw
          max r9.xyzw, r7.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r0.z, r9.xyxx, t0.yzxw, s0, l(0.000000)
          add r9.x, -r0.z, l(1.000000)
          movc r0.z, r0.x, r9.x, r0.z
          add r0.z, -r0.z, r1.z
          lt r0.z, r4.y, r0.z
          movc r0.z, r0.z, l(0), l(1.000000)
          mad r0.z, r0.z, r10.x, r3.w
          add r3.w, r4.w, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r4.w, r9.zwzz, t0.yzwx, s0, l(0.000000)
          add r9.x, -r4.w, l(1.000000)
          movc r4.w, r0.x, r9.x, r4.w
          add r4.w, r1.z, -r4.w
          lt r4.w, r4.y, r4.w
          movc r4.w, r4.w, l(0), l(1.000000)
          mad r0.z, r4.w, r10.y, r0.z
          add r3.w, r10.y, r3.w
          mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
          mad r6.xyzw, r6.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
          min r6.xyzw, r8.xyzw, r6.xyzw
          max r6.xyzw, r7.xyzw, r6.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r4.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
          add r6.x, -r4.w, l(1.000000)
          movc r4.w, r0.x, r6.x, r4.w
          add r4.w, r1.z, -r4.w
          lt r4.w, r4.y, r4.w
          movc r4.w, r4.w, l(0), l(1.000000)
          mad r0.z, r4.w, r10.z, r0.z
          add r3.w, r10.z, r3.w
          sample_l_indexable(texture2d)(float,float,float,float) r4.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
          add r6.x, -r4.w, l(1.000000)
          movc r4.w, r0.x, r6.x, r4.w
          add r4.w, r1.z, -r4.w
          lt r4.y, r4.y, r4.w
          movc r4.y, r4.y, l(0), l(1.000000)
          mad r0.z, r4.y, r10.w, r0.z
          add r3.w, r10.w, r3.w
          div r4.z, r0.z, r3.w
        endif
      endif
    endif
    eq r0.z, cb0[10].w, l(1.000000)
    if_nz r0.z
      dp4 r6.x, r2.xyzw, cb0[31].xyzw
      dp4 r6.y, r2.xyzw, cb0[32].xyzw
      dp4 r6.z, r2.xyzw, cb0[33].xyzw
      dp4 r0.z, r2.xyzw, cb0[34].xyzw
      div r6.xyz, r6.xyzx, r0.zzzz
      add r6.xyz, -r6.xyzx, cb0[9].xyzx
      mul r6.xyz, r6.xyzx, cb0[9].wwww
      dp3 r0.z, r6.xyzx, r6.xyzx
      sqrt r0.z, r0.z
      mad r0.z, r0.z, cb0[10].x, cb0[10].y
      max r0.z, r0.z, l(0.000000)
      mad r0.z, -r0.z, r0.z, l(1.000000)
      max r0.z, r0.z, l(0.000000)
      log r0.z, r0.z
      mul r0.z, r0.z, cb0[10].z
      exp r0.z, r0.z
      add r3.w, r4.z, l(-1.000000)
      mad r4.z, r0.z, r3.w, l(1.000000)
    endif
    add r0.z, -r4.z, l(1.000000)
    mad r0.z, cb0[85].y, r0.z, r4.z
  else
    eq r3.w, r4.x, l(1.000000)
    if_nz r3.w
      add r3.w, r0.y, cb0[r1.w + 80].x
      mul r4.y, r3.w, cb0[r1.w + 80].y
      eq r4.z, cb0[85].x, l(1.000000)
      if_nz r4.z
        mad r3.w, r3.w, cb0[r1.w + 80].y, -cb0[r1.w + 60].x
        div r3.w, r3.w, r4.y
        mul r6.xy, r3.wwww, cb0[r1.w + 60].zwzz
      else
        mov r6.xy, cb0[r1.w + 60].zwzz
      endif
      mul r7.xyzw, r6.xyxy, cb0[87].zzzz
      mad r6.xyzw, -r7.xyzw, r5.xyxy, r6.xyxy
      add r7.xy, r3.xyxx, -cb0[8].zwzz
      mad r8.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r1.w + 68].xyxy
      mad r9.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r1.w + 68].zwzw
      add r9.xyzw, r9.xyzw, cb0[r1.w + 68].xyxy
      min r7.xy, r7.xyxx, r9.xyxx
      max r7.xy, r8.xyxx, r7.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r7.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.x, -r3.w, r3.z
      div r7.x, r7.x, r3.z
      add r7.x, -r7.x, l(2.000000)
      mul r7.y, |r7.x|, |r7.x|
      mul r7.y, r7.y, r7.y
      mul r7.z, r7.y, |r7.x|
      mul r7.y, r3.w, r7.z
      mov r7.x, l(1.000000)
      and r7.xyz, r4.wwww, r7.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(-1.000000, 0.000000, -1.000000, 1.000000), r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r7.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r7.w, r3.w
      lt r7.w, r3.w, r3.z
      add r10.x, -r3.w, r3.z
      div r10.x, r10.x, r3.z
      add r10.x, -r10.x, l(2.000000)
      mul r10.y, |r10.x|, |r10.x|
      mul r10.y, r10.y, r10.y
      mul r11.x, r10.y, |r10.x|
      mad r11.y, r3.w, r11.x, r7.y
      mad r11.z, |r10.x|, r10.y, r7.z
      movc r11.x, r4.w, l(2.000000), l(1.000000)
      movc r7.xyz, r7.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(0.000000, -1.000000, 0.000000, 1.000000), r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      min r10.xy, r3.xyxx, r9.zwzz
      max r10.xy, r8.xyxx, r10.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(1.000000, -1.000000, 1.000000, 0.000000), r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      add r10.xy, r3.xyxx, cb0[8].zwzz
      min r10.xy, r9.xyxx, r10.xyxx
      max r10.xy, r8.xyxx, r10.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
      mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r7.w, -r3.w, r3.z
      div r7.w, r7.w, r3.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
      mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r6.xyzw, r9.xyzw, r6.xyzw
      max r6.xyzw, r8.xyzw, r6.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r6.x, -r3.w, r3.z
      div r6.x, r6.x, r3.z
      add r6.x, -r6.x, l(2.000000)
      mul r6.y, |r6.x|, |r6.x|
      mul r6.y, r6.y, r6.y
      mul r7.w, r6.y, |r6.x|
      mad r10.y, r3.w, r7.w, r7.y
      mad r10.z, |r6.x|, r6.y, r7.z
      add r10.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r10.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r3.z
      add r6.x, -r3.w, r3.z
      div r6.x, r6.x, r3.z
      add r6.x, -r6.x, l(2.000000)
      mul r6.y, |r6.x|, |r6.x|
      mul r6.y, r6.y, r6.y
      mul r6.z, r6.y, |r6.x|
      mad r10.y, r3.w, r6.z, r7.y
      mad r10.z, |r6.x|, r6.y, r7.z
      add r10.x, r7.x, l(1.000000)
      movc r6.xyz, r4.wwww, r10.xyzx, r7.xyzx
      eq r3.w, r6.x, l(0.000000)
      if_nz r3.w
        mov r4.w, l(1.000000)
      endif
      if_z r3.w
        div r6.z, r6.y, r6.z
        ishl r3.w, r1.w, l(2)
        mad r6.xy, r3.xyxx, l(2.000000, -2.000000, 0.000000, 0.000000), l(-1.000000, 1.000000, 0.000000, 0.000000)
        mov r6.w, l(1.000000)
        dp4 r7.x, r6.xyzw, cb0[r3.w + 13].xyzw
        dp4 r3.w, r6.xyzw, cb0[r3.w + 14].xyzw
        div r3.w, r7.x, r3.w
        add r3.w, r3.w, cb0[r1.w + 80].x
        mul r6.xy, cb0[86].xxxx, cb0[r1.w + 60].zwzz
        mad r3.w, -r3.w, cb0[r1.w + 80].y, r4.y
        min r3.w, r3.w, cb0[85].w
        div r3.w, r3.w, cb0[85].z
        mad r6.zw, -cb0[r1.w + 60].zzzw, cb0[86].xxxx, cb0[r1.w + 60].zzzw
        mad r6.xy, r3.wwww, r6.zwzz, r6.xyxx
        if_nz r4.z
          div r4.y, cb0[r1.w + 60].x, r4.y
          mul r6.xy, r4.yyyy, r6.xyxx
        endif
        mul r7.xyzw, r6.xyxy, cb0[87].wwww
        mad r6.xyzw, -r7.xyzw, r5.zwzw, r6.xyxy
        if_z r1.w
          mul r7.xyzw, r6.zwzw, cb0[64].xyxy
          mul r10.xyzw, cb0[86].yyyy, l(-7.19990158, -8.579733, -2.58234143, -6.140668)
          exp r10.xyzw, r10.xyzw
          div r4.y, r3.w, cb0[86].z
          add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r10.xyzw, r4.yyyy, r11.xyzw, r10.xyzw
          mad r11.xyzw, r7.zwzw, l(-0.520550, -0.845855, -0.751771, -0.655454), r3.xyxy
          mad r12.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].xyxy
          mad r13.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].zwzw
          add r13.xyzw, r13.xyzw, cb0[68].xyxy
          min r11.xyzw, r11.xyzw, r13.xyzw
          max r11.xyzw, r12.xyzw, r11.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r4.z, r11.xyxx, t0.yzxw, s0, l(0.000000)
          add r11.x, -r4.z, l(1.000000)
          movc r4.z, r0.x, r11.x, r4.z
          add r4.z, r3.z, -r4.z
          mul r11.x, r3.z, cb0[84].z
          lt r4.z, r11.x, r4.z
          movc r4.z, r4.z, l(0), l(1.000000)
          sample_l_indexable(texture2d)(float,float,float,float) r11.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
          add r11.z, -r11.y, l(1.000000)
          movc r11.y, r0.x, r11.z, r11.y
          add r11.y, r3.z, -r11.y
          lt r11.y, r11.x, r11.y
          movc r11.y, r11.y, l(0), l(1.000000)
          mad r14.xyzw, r7.zwzw, l(-0.678021, -0.483970, -0.854925, -0.490874), r3.xyxy
          min r14.xyzw, r13.xyzw, r14.xyzw
          max r14.xyzw, r12.xyzw, r14.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r11.z, r14.xyxx, t0.yzxw, s0, l(0.000000)
          add r11.w, -r11.z, l(1.000000)
          movc r11.z, r0.x, r11.w, r11.z
          add r11.z, r3.z, -r11.z
          lt r11.z, r11.x, r11.z
          movc r11.z, r11.z, l(0), l(1.000000)
          mul r11.z, r10.z, r11.z
          mad r4.z, r4.z, r10.x, r11.z
          sample_l_indexable(texture2d)(float,float,float,float) r11.z, r14.zwzz, t0.yzxw, s0, l(0.000000)
          add r11.w, -r11.z, l(1.000000)
          movc r11.z, r0.x, r11.w, r11.z
          add r11.z, r3.z, -r11.z
          lt r11.z, r11.x, r11.z
          movc r11.z, r11.z, l(0), l(1.000000)
          mul r11.z, r10.w, r11.z
          mad r11.y, r11.y, r10.y, r11.z
          add r10.xy, r10.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-2.31478643, -2.89526725, -3.05039549, -3.991754)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(-0.792431, 0.102304, -0.761083, 0.412305), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.xyxx, t0.yzxw, s0, l(0.000000)
          add r10.w, -r10.z, l(1.000000)
          movc r10.z, r0.x, r10.w, r10.z
          add r10.z, r3.z, -r10.z
          lt r10.z, r11.x, r10.z
          movc r10.z, r10.z, l(0), l(1.000000)
          mad r4.z, r10.z, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.zwzz, t0.yzxw, s0, l(0.000000)
          add r10.w, -r10.z, l(1.000000)
          movc r10.z, r0.x, r10.w, r10.z
          add r10.z, r3.z, -r10.z
          lt r10.z, r11.x, r10.z
          movc r10.z, r10.z, l(0), l(1.000000)
          mad r10.z, r10.z, r14.y, r11.y
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(-0.516157, 0.711853, -0.700168, 0.622896), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-1.642316, -3.31069326, -1.56545961, -0.724846363)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(-0.355834, -0.579066, -0.233941, -0.868254), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.y, r10.z
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(-0.490482, -0.444796, -0.319092, -0.232716), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-1.007788, -1.02969921, -1.71244168, -6.181365)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(-0.273454, 0.421808, -0.400938, 0.315500), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.y, r10.z
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(-0.275007, 0.638120, -0.458971, 0.872913), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-5.08163738, -5.330224, -0.879165471, -0.595332325)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(0.099781, -0.965326, 0.334974, -0.915804), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.y, r10.z
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(0.077748, -0.449646, 0.156905, -0.299496), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-0.826701760, -0.270535439, -6.51378965, -6.92056370)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(0.211989, 0.381204, 0.086743, 0.147352), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.y, r10.z
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(0.047982, 0.987892, 0.264924, 0.955706), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-6.25430250, -6.557017, -8.892467, -1.43309534)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(0.736900, -0.656468, 0.891683, -0.428688), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.y, r10.z
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(0.996095, -0.059922, 0.508179, 0.371795), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          add r10.xy, r14.zwzz, r10.xyxx
          mul r14.xyzw, cb0[86].yyyy, l(-3.670727, -7.835936, -7.05661964, -5.628084)
          exp r14.xyzw, r14.xyzw
          add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
          mad r15.xyzw, r7.zwzw, l(0.799534, 0.458109, 0.757355, 0.646281), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.x, r4.z
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.y, r10.z
          add r10.xy, r10.xyxx, r14.xyxx
          mad r15.xyzw, r7.zwzw, l(0.618847, 0.775926, -0.945555, -0.256700), r3.xyxy
          min r15.xyzw, r13.xyzw, r15.xyzw
          max r15.xyzw, r12.xyzw, r15.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r4.z, r10.w, r14.z, r4.z
          mov x4[0].x, r4.z
          add r10.xy, r14.zwzz, r10.xyxx
          mov x5[0].x, r10.x
          sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
          add r11.y, -r10.w, l(1.000000)
          movc r10.w, r0.x, r11.y, r10.w
          add r10.w, r3.z, -r10.w
          lt r10.w, r11.x, r10.w
          movc r10.w, r10.w, l(0), l(1.000000)
          mad r10.z, r10.w, r14.w, r10.z
          mov x4[1].x, r10.z
          mov x5[1].x, r10.y
          div r10.w, r4.z, r10.x
          div r11.y, r10.z, r10.y
          add r10.w, r10.w, -r11.y
          ge r10.w, cb0[86].w, |r10.w|
          if_z r10.w
            mul r14.xyzw, cb0[86].yyyy, l(-2.858026, -1.79378712, -2.96656418, -2.513609)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.787474, -0.350792, -0.570386, 0.425458), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.834992, 0.251581, -0.497132, -0.658249), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-2.37573552, -1.10526347, -0.803203702, -0.611408174)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.324060, -0.739428, -0.322221, -0.427310), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.413079, -0.107845, -0.175731, 0.297404), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-0.954242408, -2.72319531, -1.61956906, -3.85246587)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.072165, 0.478476, -0.261705, 0.807197), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.401925, 0.541754, 0.457626, -0.810501), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-2.325746, -0.932220578, -0.230742186, -1.12492311)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.481411, -0.639601, 0.292735, -0.375278), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.009136, -0.147521, 0.498175, 0.212168), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-0.845245, -2.57143140, -1.46358633, -2.53469944)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.341249, 0.283087, 0.458700, 0.693847), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.012386, 0.637289, 0.712021, -0.421494), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-1.67824161, -3.67468786, -2.04183936, -2.84555030)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.514875, -0.455643, 0.876284, 0.285730), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.677064, 0.338902, 0.604616, 0.612818), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-2.93084764, -2.16161823, -1.428795, -4.45605373)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.865207, -0.079617, -0.753249, -0.188573), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.594055, 0.205390, -0.951743, 0.071686), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-1.51467049, -1.35937870, -0.454479277, -0.786625087)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.205326, -0.616743, -0.048028, -0.608357), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.265306, -0.051333, -0.095825, -0.409232), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r4.z, r11.y, r14.z, r4.z
            mov x4[0].x, r4.z
            add r10.xy, r14.zwzz, r10.xyxx
            mov x5[0].x, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r15.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r10.z, r11.y, r14.w, r10.z
            mov x4[1].x, r10.z
            mov x5[1].x, r10.y
            div r4.z, r4.z, r10.x
            div r10.x, r10.z, r10.y
            add r4.z, r4.z, -r10.x
            ge r4.z, cb0[86].w, |r4.z|
            or r4.z, r10.w, r4.z
          else
            mov r4.z, l(-1)
          endif
          if_z r4.z
            mul r10.xyzw, cb0[86].yyyy, l(-0.454922915, -0.488759756, -3.00368571, -2.19938278)
            exp r10.xyzw, r10.xyzw
            add r14.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r10.xyzw, r4.yyyy, r14.xyzw, r10.xyzw
            mad r14.xyzw, r7.zwzw, l(-0.016320, 0.269958, -0.249026, 0.143399), r3.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.z, r14.xyxx, t0.yzxw, s0, l(0.000000)
            add r11.y, -r4.z, l(1.000000)
            movc r4.z, r0.x, r11.y, r4.z
            add r4.z, r3.z, -r4.z
            lt r4.z, r11.x, r4.z
            movc r4.z, r4.z, l(0), l(1.000000)
            mov r11.y, x4[0].x
            mad r4.z, r4.z, r10.x, r11.y
            mov r11.y, x5[0].x
            add r10.x, r10.x, r11.y
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r14.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mov r11.z, x4[1].x
            mad r11.y, r11.y, r10.y, r11.z
            mov r11.z, x5[1].x
            add r10.y, r10.y, r11.z
            mad r14.xyzw, r7.zwzw, l(-0.077402, 0.871890, 0.320827, -0.713453), r3.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.z, r14.xyxx, t0.yzxw, s0, l(0.000000)
            add r11.w, -r11.z, l(1.000000)
            movc r11.z, r0.x, r11.w, r11.z
            add r11.z, r3.z, -r11.z
            lt r11.z, r11.x, r11.z
            movc r11.z, r11.z, l(0), l(1.000000)
            mad r4.z, r11.z, r10.z, r4.z
            add r10.x, r10.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.z, r14.zwzz, t0.yzxw, s0, l(0.000000)
            add r11.z, -r10.z, l(1.000000)
            movc r10.z, r0.x, r11.z, r10.z
            add r10.z, r3.z, -r10.z
            lt r10.z, r11.x, r10.z
            movc r10.z, r10.z, l(0), l(1.000000)
            mad r10.z, r10.z, r10.w, r11.y
            add r10.y, r10.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-2.64347386, -0.213732481, -0.532696843, -0.526722968)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.176208, -0.821267, 0.137687, -0.001624), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            add r10.x, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r15.xyzw, r7.zwzw, l(0.300395, -0.071291, 0.273251, 0.137443), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            add r10.x, r14.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.y, r14.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-0.841880858, -2.84530139, -4.22661066, -3.85716414)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.438788, 0.053885, 0.126562, 0.851497), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            add r10.x, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r15.xyzw, r7.zwzw, l(0.421608, 0.847508, 0.893173, -0.262668), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            add r10.x, r14.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.y, r14.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-2.67585087, -2.05042386, -3.10861135, -1.78108454)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.837432, -0.101072, 0.734523, 0.189552), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            add r10.x, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r15.xyzw, r7.zwzw, l(0.880797, 0.075944, -0.708420, -0.029535), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            add r10.x, r14.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.y, r14.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-1.43741608, -2.969294, -0.427928865, -0.981529)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.555554, -0.298719, -0.045759, -0.871110), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            add r10.x, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r15.xyzw, r7.zwzw, l(-0.138755, -0.215934, -0.488585, 0.069882), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            add r10.x, r14.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.y, r14.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-0.183740988, -1.48677206, -1.46949327, -0.856197476)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.112210, 0.041340, 0.138922, -0.628008), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            add r10.x, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r15.xyzw, r7.zwzw, l(0.317340, -0.554506, 0.375213, -0.244039), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            add r10.x, r14.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.y, r14.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-1.73866272, -1.12745857, -1.98774683, -1.304964)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.256567, 0.651665, 0.135182, 0.525159), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            add r10.x, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r15.xyzw, r7.zwzw, l(0.701911, -0.258122, 0.549497, -0.228906), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            add r10.x, r14.z, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.y, r14.w, r10.y
            mul r14.xyzw, cb0[86].yyyy, l(-1.35949278, -1.304402, -1.39065552, -1.56391883)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.605768, 0.074079, -0.582759, -0.120620), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
            add r10.w, -r4.y, l(1.000000)
            movc r4.y, r0.x, r10.w, r4.y
            add r4.y, r3.z, -r4.y
            lt r4.y, r11.x, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mad r4.y, r4.y, r14.x, r4.z
            add r4.z, r10.x, r14.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.x, r15.zwzz, t0.xyzw, s0, l(0.000000)
            add r10.w, -r10.x, l(1.000000)
            movc r10.x, r0.x, r10.w, r10.x
            add r10.x, r3.z, -r10.x
            lt r10.x, r11.x, r10.x
            movc r10.x, r10.x, l(0), l(1.000000)
            mad r10.x, r10.x, r14.y, r10.z
            add r10.y, r10.y, r14.y
            mad r7.xyzw, r7.xyzw, l(0.351929, 0.508746, 0.653662, -0.103267), r3.xyxy
            min r7.xyzw, r13.xyzw, r7.xyzw
            max r7.xyzw, r12.xyzw, r7.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r7.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r11.x, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r14.z, r4.y
            mov x4[0].x, r4.y
            add r4.y, r14.z, r4.z
            mov x5[0].x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r7.zwzz, t0.yxzw, s0, l(0.000000)
            add r4.z, -r4.y, l(1.000000)
            movc r4.y, r0.x, r4.z, r4.y
            add r4.y, r3.z, -r4.y
            lt r4.y, r11.x, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mad r4.y, r4.y, r14.w, r10.x
            mov x4[1].x, r4.y
            add r4.y, r14.w, r10.y
            mov x5[1].x, r4.y
          endif
          mov r4.y, x4[0].x
          mov r4.z, x4[1].x
          add r4.y, r4.z, r4.y
          mov r4.z, x5[0].x
          mov r7.x, x5[1].x
          add r4.z, r4.z, r7.x
          div r4.w, r4.y, r4.z
        else
          ieq r4.y, r1.w, l(1)
          if_nz r4.y
            mul r7.xyzw, r6.zwzw, cb0[65].xyxy
            mul r10.xyzw, cb0[86].yyyy, l(-4.31136370, -3.52627683, -1.25792563, -1.55836809)
            exp r10.xyzw, r10.xyzw
            div r4.y, r3.w, cb0[86].z
            add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r10.xyzw, r4.yyyy, r11.xyzw, r10.xyzw
            mad r11.xyzw, r7.zwzw, l(-0.554247, -0.771111, -0.739494, -0.535813), r3.xyxy
            mad r12.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].xyxy
            mad r13.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].zwzw
            add r13.xyzw, r13.xyzw, cb0[69].xyxy
            min r11.xyzw, r11.xyzw, r13.xyzw
            max r11.xyzw, r12.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.z, r11.xyxx, t0.yzxw, s0, l(0.000000)
            add r11.x, -r4.z, l(1.000000)
            movc r4.z, r0.x, r11.x, r4.z
            add r4.z, r3.z, -r4.z
            mul r11.x, r3.z, cb0[84].z
            lt r4.z, r11.x, r4.z
            movc r4.z, r4.z, l(0), l(1.000000)
            sample_l_indexable(texture2d)(float,float,float,float) r11.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r11.z, -r11.y, l(1.000000)
            movc r11.y, r0.x, r11.z, r11.y
            add r11.y, r3.z, -r11.y
            lt r11.y, r11.x, r11.y
            movc r11.y, r11.y, l(0), l(1.000000)
            mad r14.xyzw, r7.zwzw, l(-0.581835, -0.004852, -0.617420, -0.234535), r3.xyxy
            min r14.xyzw, r13.xyzw, r14.xyzw
            max r14.xyzw, r12.xyzw, r14.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r11.z, r14.xyxx, t0.yzxw, s0, l(0.000000)
            add r11.w, -r11.z, l(1.000000)
            movc r11.z, r0.x, r11.w, r11.z
            add r11.z, r3.z, -r11.z
            lt r11.z, r11.x, r11.z
            movc r11.z, r11.z, l(0), l(1.000000)
            mul r11.z, r10.z, r11.z
            mad r4.z, r4.z, r10.x, r11.z
            sample_l_indexable(texture2d)(float,float,float,float) r11.z, r14.zwzz, t0.yzxw, s0, l(0.000000)
            add r11.w, -r11.z, l(1.000000)
            movc r11.z, r0.x, r11.w, r11.z
            add r11.z, r3.z, -r11.z
            lt r11.z, r11.x, r11.z
            movc r11.z, r11.z, l(0), l(1.000000)
            mul r11.z, r10.w, r11.z
            mad r11.y, r11.y, r10.y, r11.z
            add r10.xy, r10.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-1.93653631, -2.47095561, -4.553454, -2.50024080)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.681692, 0.284707, -0.812983, 0.104160), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.xyxx, t0.yzxw, s0, l(0.000000)
            add r10.w, -r10.z, l(1.000000)
            movc r10.z, r0.x, r10.w, r10.z
            add r10.z, r3.z, -r10.z
            lt r10.z, r11.x, r10.z
            movc r10.z, r10.z, l(0), l(1.000000)
            mad r4.z, r10.z, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.z, r15.zwzz, t0.yzxw, s0, l(0.000000)
            add r10.w, -r10.z, l(1.000000)
            movc r10.z, r0.x, r10.w, r10.z
            add r10.z, r3.z, -r10.z
            lt r10.z, r11.x, r10.z
            movc r10.z, r10.z, l(0), l(1.000000)
            mad r10.z, r10.z, r14.y, r11.y
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.607105, 0.847591, -0.601184, 0.562426), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-4.74890566, -2.08656836, -0.674442112, -0.563664)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.023469, -0.962523, -0.123936, -0.754448), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.004852, -0.373394, -0.183569, -0.266274), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-0.901273072, -0.228480220, -2.20538688, -5.671054)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(-0.061067, 0.460555, -0.085910, 0.118625), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(-0.221656, 0.751152, -0.275979, 0.981567), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-2.09949541, -4.05256033, -0.993613303, -1.25950646)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.404157, -0.651479, 0.320597, -0.883358), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.465560, -0.176183, 0.410443, -0.413068), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-0.814901173, -0.939830, -1.95053983, -3.42842364)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.413556, 0.123325, 0.353557, 0.322733), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.492660, 0.553880, 0.266579, 0.867061), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-2.98889518, -2.22883439, -6.24990940, -2.74358654)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.933348, -0.629810, 0.863582, -0.852290), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.920530, -0.355693, 0.849300, -0.048555), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            add r10.xy, r14.zwzz, r10.xyxx
            mul r14.xyzw, cb0[86].yyyy, l(-4.868580, -2.09602141, -3.33378029, -2.11065435)
            exp r14.xyzw, r14.xyzw
            add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
            mad r15.xyzw, r7.zwzw, l(0.952940, 0.156896, 0.691031, 0.330729), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.x, r4.z
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.y, r10.z
            add r10.xy, r10.xyxx, r14.xyxx
            mad r15.xyzw, r7.zwzw, l(0.898068, 0.633778, 0.890622, 0.850581), r3.xyxy
            min r15.xyzw, r13.xyzw, r15.xyzw
            max r15.xyzw, r12.xyzw, r15.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r4.z, r10.w, r14.z, r4.z
            mov x6[0].x, r4.z
            add r10.xy, r14.zwzz, r10.xyxx
            mov x7[0].x, r10.x
            sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
            add r11.y, -r10.w, l(1.000000)
            movc r10.w, r0.x, r11.y, r10.w
            add r10.w, r3.z, -r10.w
            lt r10.w, r11.x, r10.w
            movc r10.w, r10.w, l(0), l(1.000000)
            mad r10.z, r10.w, r14.w, r10.z
            mov x6[1].x, r10.z
            mov x7[1].x, r10.y
            div r10.w, r4.z, r10.x
            div r11.y, r10.z, r10.y
            add r10.w, r10.w, -r11.y
            lt r10.w, cb0[86].w, |r10.w|
            if_nz r10.w
              mul r14.xyzw, cb0[86].yyyy, l(-3.340066, -2.93286467, -3.71318436, -7.903147)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(-0.786126, -0.767632, -0.822138, -0.281655), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(-0.918943, -0.094150, -0.934812, 0.366741), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-1.96691215, -3.77197456, -2.417392, -3.47431779)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(-0.835200, 0.937803, -0.873226, 0.623890), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(-0.341594, -0.737541, -0.483383, -0.976928), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-1.07460284, -0.362947851, -0.695641100, -0.693262100)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(-0.204932, -0.483566, -0.214393, -0.059236), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(-0.230811, 0.305094, -0.367534, 0.102451), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-1.645441, -1.18442786, -1.92146969, -0.611149)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(-0.353130, 0.581530, 0.181860, -0.529649), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(0.087741, -0.730766, 0.188208, -0.289529), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-0.137389123, -0.362524211, -0.549391091, -1.371425)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(0.035981, -0.083407, 0.212928, 0.063509), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(0.145970, 0.281045, 0.236610, 0.566027), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-2.062181, -3.34212351, -4.833588, -2.24719357)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(0.021332, 0.760247, 0.637135, -0.637623), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(0.535875, -0.885556, 0.686331, -0.389935), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-1.733622, -1.39554238, -2.12258387, -5.77069855)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(0.677236, -0.174291, 0.615894, 0.070345), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r15.xyzw, r7.zwzw, l(0.715629, 0.999939, 0.676260, 0.711600), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.xyxx, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r4.z, r10.w, r14.z, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r10.w, r15.zwzz, t0.yzwx, s0, l(0.000000)
              add r11.y, -r10.w, l(1.000000)
              movc r10.w, r0.x, r11.y, r10.w
              add r10.w, r3.z, -r10.w
              lt r10.w, r11.x, r10.w
              movc r10.w, r10.w, l(0), l(1.000000)
              mad r10.z, r10.w, r14.w, r10.z
              add r10.xy, r14.zwzz, r10.xyxx
              mul r14.xyzw, cb0[86].yyyy, l(-0.851650417, -1.39399922, -1.217193, -6.313437)
              exp r14.xyzw, r14.xyzw
              add r15.xyzw, -r14.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r14.xyzw, r4.yyyy, r15.xyzw, r14.xyzw
              mad r15.xyzw, r7.zwzw, l(-0.409772, -0.175695, -0.476669, -0.395672), r3.xyxy
              min r15.xyzw, r13.xyzw, r15.xyzw
              max r15.xyzw, r12.xyzw, r15.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r4.y, r15.xyxx, t0.yxzw, s0, l(0.000000)
              add r10.w, -r4.y, l(1.000000)
              movc r4.y, r0.x, r10.w, r4.y
              add r4.y, r3.z, -r4.y
              lt r4.y, r11.x, r4.y
              movc r4.y, r4.y, l(0), l(1.000000)
              mad r4.y, r4.y, r14.x, r4.z
              sample_l_indexable(texture2d)(float,float,float,float) r4.z, r15.zwzz, t0.yzxw, s0, l(0.000000)
              add r10.w, -r4.z, l(1.000000)
              movc r4.z, r0.x, r10.w, r4.z
              add r4.z, r3.z, -r4.z
              lt r4.z, r11.x, r4.z
              movc r4.z, r4.z, l(0), l(1.000000)
              mad r4.z, r4.z, r14.y, r10.z
              add r10.xy, r10.xyxx, r14.xyxx
              mad r7.xyzw, r7.xyzw, l(-0.439802, 0.362407, 0.506333, 0.876888), r3.xyxy
              min r7.xyzw, r13.xyzw, r7.xyzw
              max r7.xyzw, r12.xyzw, r7.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r7.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r11.x, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r4.y, r7.x, r14.z, r4.y
              mov x6[0].x, r4.y
              add r7.xy, r14.zwzz, r10.xyxx
              mov x7[0].x, r7.x
              sample_l_indexable(texture2d)(float,float,float,float) r4.y, r7.zwzz, t0.yxzw, s0, l(0.000000)
              add r7.x, -r4.y, l(1.000000)
              movc r4.y, r0.x, r7.x, r4.y
              add r4.y, r3.z, -r4.y
              lt r4.y, r11.x, r4.y
              movc r4.y, r4.y, l(0), l(1.000000)
              mad r4.y, r4.y, r14.w, r4.z
              mov x6[1].x, r4.y
              mov x7[1].x, r7.y
            endif
            mov r4.y, x6[0].x
            mov r4.z, x6[1].x
            add r4.y, r4.z, r4.y
            mov r4.z, x7[0].x
            mov r7.x, x7[1].x
            add r4.z, r4.z, r7.x
            div r4.w, r4.y, r4.z
          else
            mul r7.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
            mul r10.xyzw, cb0[86].yyyy, l(-3.15952015, -1.38548744, -6.94438553, -1.06862068)
            exp r10.xyzw, r10.xyzw
            div r3.w, r3.w, cb0[86].z
            add r11.xyzw, -r10.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r10.xyzw, r3.wwww, r11.xyzw, r10.xyzw
            mad r7.xyzw, r7.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r7.xyzw, r9.xyzw, r7.xyzw
            max r7.xyzw, r8.xyzw, r7.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r7.xyxx, t0.yxzw, s0, l(0.000000)
            add r4.z, -r4.y, l(1.000000)
            movc r4.y, r0.x, r4.z, r4.y
            add r4.y, r3.z, -r4.y
            mul r4.z, r3.z, cb0[84].z
            lt r4.y, r4.z, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r7.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r4.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mul r7.x, r10.y, r7.x
            mad r4.y, r4.y, r10.x, r7.x
            add r7.x, r10.y, r10.x
            mul r11.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
            mad r11.xyzw, r11.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r11.xyzw, r9.xyzw, r11.xyzw
            max r11.xyzw, r8.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r10.z, r4.y
            add r7.x, r10.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r10.w, r4.y
            add r7.x, r10.w, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
            mul r11.xyzw, cb0[86].yyyy, l(-1.86925554, -3.26677227, -2.21088624, -3.31532168)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.x, r4.y
            add r7.x, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.y, r4.y
            add r7.x, r11.y, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.z, r4.y
            add r7.x, r11.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.w, r4.y
            add r7.x, r11.w, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
            mul r11.xyzw, cb0[86].yyyy, l(-2.65607238, -0.509738743, -0.396726757, -1.48935831)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.x, r4.y
            add r7.x, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.y, r4.y
            add r7.x, r11.y, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.z, r4.y
            add r7.x, r11.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.w, r4.y
            add r7.x, r11.w, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
            mul r11.xyzw, cb0[86].yyyy, l(-3.700013, -1.88057292, -6.43597031, -1.007971)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.x, r4.y
            add r7.x, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.y, r4.y
            add r7.x, r11.y, r7.x
            mul r10.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.z, r4.y
            add r7.x, r11.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.w, r4.y
            add r7.x, r11.w, r7.x
            mul r10.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
            mul r11.xyzw, cb0[86].yyyy, l(-0.818598330, -0.207658067, -1.42133641, -1.874704)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.x, r4.y
            add r7.x, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.y, r4.y
            add r7.x, r11.y, r7.x
            mul r10.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.z, r4.y
            add r7.x, r11.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.w, r4.y
            add r7.x, r11.w, r7.x
            mul r10.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
            mul r11.xyzw, cb0[86].yyyy, l(-3.30185962, -2.06184530, -3.57361269, -1.25295591)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.x, r4.y
            add r7.x, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.y, r4.y
            add r7.x, r11.y, r7.x
            mul r10.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.z, r4.y
            add r7.x, r11.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.w, r4.y
            add r7.x, r11.w, r7.x
            mul r10.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
            mul r11.xyzw, cb0[86].yyyy, l(-2.69696546, -3.500330, -5.50587749, -3.47976851)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.x, r4.y
            add r7.x, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.y, r4.y
            add r7.x, r11.y, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.z, r4.y
            add r7.x, r11.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r10.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r4.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r4.y, r7.y, r11.w, r4.y
            add r7.x, r11.w, r7.x
            mul r10.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
            mul r11.xyzw, cb0[86].yyyy, l(-4.287428, -1.03613436, -0.570473433, -4.38599825)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r10.xyzw, r10.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r10.xyzw, r9.xyzw, r10.xyzw
            max r10.xyzw, r8.xyzw, r10.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t0.yzwx, s0, l(0.000000)
            add r7.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r7.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r4.z, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r3.w, r3.w, r11.x, r4.y
            add r4.y, r7.x, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r10.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r4.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r11.y, r3.w
            add r4.y, r11.y, r4.y
            mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r6.x, r6.xyxx, t0.xyzw, s0, l(0.000000)
            add r6.y, -r6.x, l(1.000000)
            movc r6.x, r0.x, r6.y, r6.x
            add r6.x, r3.z, -r6.x
            lt r6.x, r4.z, r6.x
            movc r6.x, r6.x, l(0), l(1.000000)
            mad r3.w, r6.x, r11.z, r3.w
            add r4.y, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r6.x, r6.zwzz, t0.xyzw, s0, l(0.000000)
            add r6.y, -r6.x, l(1.000000)
            movc r6.x, r0.x, r6.y, r6.x
            add r6.x, r3.z, -r6.x
            lt r4.z, r4.z, r6.x
            movc r4.z, r4.z, l(0), l(1.000000)
            mad r3.w, r4.z, r11.w, r3.w
            add r4.y, r11.w, r4.y
            div r4.w, r3.w, r4.y
          endif
        endif
      endif
      eq r3.w, cb0[10].w, l(1.000000)
      if_nz r3.w
        dp4 r6.x, r2.xyzw, cb0[31].xyzw
        dp4 r6.y, r2.xyzw, cb0[32].xyzw
        dp4 r6.z, r2.xyzw, cb0[33].xyzw
        dp4 r3.w, r2.xyzw, cb0[34].xyzw
        div r6.xyz, r6.xyzx, r3.wwww
        add r6.xyz, -r6.xyzx, cb0[9].xyzx
        mul r6.xyz, r6.xyzx, cb0[9].wwww
        dp3 r3.w, r6.xyzx, r6.xyzx
        sqrt r3.w, r3.w
        mad r3.w, r3.w, cb0[10].x, cb0[10].y
        max r3.w, r3.w, l(0.000000)
        mad r3.w, -r3.w, r3.w, l(1.000000)
        max r3.w, r3.w, l(0.000000)
        log r3.w, r3.w
        mul r3.w, r3.w, cb0[10].z
        exp r3.w, r3.w
        add r4.y, r4.w, l(-1.000000)
        mad r4.w, r3.w, r4.y, l(1.000000)
      endif
      add r3.w, -r4.w, l(1.000000)
      mad r0.z, cb0[85].y, r3.w, r4.w
    else
      add r3.w, r0.y, cb0[r0.w + 80].x
      mul r4.y, r3.w, cb0[r0.w + 80].y
      eq r4.z, cb0[85].x, l(1.000000)
      if_nz r4.z
        mad r3.w, r3.w, cb0[r0.w + 80].y, -cb0[r0.w + 60].x
        div r3.w, r3.w, r4.y
        mul r6.xy, r3.wwww, cb0[r0.w + 60].zwzz
      else
        mov r6.xy, cb0[r0.w + 60].zwzz
      endif
      mul r7.xyzw, r6.xyxy, cb0[87].zzzz
      mad r6.xyzw, -r7.xyzw, r5.xyxy, r6.xyxy
      add r7.xy, r1.xyxx, -cb0[8].zwzz
      mad r8.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r0.w + 68].xyxy
      mad r9.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r0.w + 68].zwzw
      add r9.xyzw, r9.xyzw, cb0[r0.w + 68].xyxy
      min r7.xy, r7.xyxx, r9.xyxx
      max r7.xy, r8.xyxx, r7.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r7.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.x, r1.z, -r3.w
      div r7.x, r7.x, r1.z
      add r7.x, -r7.x, l(2.000000)
      mul r7.y, |r7.x|, |r7.x|
      mul r7.y, r7.y, r7.y
      mul r7.z, r7.y, |r7.x|
      mul r7.y, r3.w, r7.z
      mov r7.x, l(1.000000)
      and r7.xyz, r4.wwww, r7.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(-1.000000, 0.000000, -1.000000, 1.000000), r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r7.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r7.w, r3.w
      lt r7.w, r3.w, r1.z
      add r10.x, r1.z, -r3.w
      div r10.x, r10.x, r1.z
      add r10.x, -r10.x, l(2.000000)
      mul r10.y, |r10.x|, |r10.x|
      mul r10.y, r10.y, r10.y
      mul r11.x, r10.y, |r10.x|
      mad r11.y, r3.w, r11.x, r7.y
      mad r11.z, |r10.x|, r10.y, r7.z
      movc r11.x, r4.w, l(2.000000), l(1.000000)
      movc r7.xyz, r7.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(0.000000, -1.000000, 0.000000, 1.000000), r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      min r10.xy, r1.xyxx, r9.zwzz
      max r10.xy, r8.xyxx, r10.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(1.000000, -1.000000, 1.000000, 0.000000), r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      add r10.xy, r1.xyxx, cb0[8].zwzz
      min r10.xy, r9.xyxx, r10.xyxx
      max r10.xy, r8.xyxx, r10.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r10.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
      mad r10.xyzw, r10.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r10.xyzw, r9.xyzw, r10.xyzw
      max r10.xyzw, r8.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r10.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r7.w, r1.z, -r3.w
      div r7.w, r7.w, r1.z
      add r7.w, -r7.w, l(2.000000)
      mul r10.x, |r7.w|, |r7.w|
      mul r10.x, r10.x, r10.x
      mul r10.y, |r7.w|, r10.x
      mad r11.y, r3.w, r10.y, r7.y
      mad r11.z, |r7.w|, r10.x, r7.z
      add r11.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r11.xyzx, r7.xyzx
      mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
      mad r6.xyzw, r6.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
      min r6.xyzw, r9.xyzw, r6.xyzw
      max r6.xyzw, r8.xyzw, r6.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r6.x, r1.z, -r3.w
      div r6.x, r6.x, r1.z
      add r6.x, -r6.x, l(2.000000)
      mul r6.y, |r6.x|, |r6.x|
      mul r6.y, r6.y, r6.y
      mul r7.w, r6.y, |r6.x|
      mad r8.y, r3.w, r7.w, r7.y
      mad r8.z, |r6.x|, r6.y, r7.z
      add r8.x, r7.x, l(1.000000)
      movc r7.xyz, r4.wwww, r8.xyzx, r7.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t2.yzwx, s0, l(0.000000)
      add r4.w, -r3.w, l(1.000000)
      movc r3.w, r0.x, r4.w, r3.w
      lt r4.w, r3.w, r1.z
      add r6.x, r1.z, -r3.w
      div r6.x, r6.x, r1.z
      add r6.x, -r6.x, l(2.000000)
      mul r6.y, |r6.x|, |r6.x|
      mul r6.y, r6.y, r6.y
      mul r6.z, r6.y, |r6.x|
      mad r8.y, r3.w, r6.z, r7.y
      mad r8.z, |r6.x|, r6.y, r7.z
      add r8.x, r7.x, l(1.000000)
      movc r6.xyz, r4.wwww, r8.xyzx, r7.xyzx
      eq r3.w, r6.x, l(0.000000)
      if_nz r3.w
        mov r4.w, l(1.000000)
      endif
      if_z r3.w
        div r6.z, r6.y, r6.z
        ishl r3.w, r0.w, l(2)
        mad r6.xy, r1.xyxx, l(2.000000, -2.000000, 0.000000, 0.000000), l(-1.000000, 1.000000, 0.000000, 0.000000)
        mov r6.w, l(1.000000)
        dp4 r7.x, r6.xyzw, cb0[r3.w + 13].xyzw
        dp4 r3.w, r6.xyzw, cb0[r3.w + 14].xyzw
        div r3.w, r7.x, r3.w
        add r3.w, r3.w, cb0[r0.w + 80].x
        mul r6.xy, cb0[86].xxxx, cb0[r0.w + 60].zwzz
        mad r3.w, -r3.w, cb0[r0.w + 80].y, r4.y
        min r3.w, r3.w, cb0[85].w
        div r3.w, r3.w, cb0[85].z
        mad r6.zw, -cb0[r0.w + 60].zzzw, cb0[86].xxxx, cb0[r0.w + 60].zzzw
        mad r6.xy, r3.wwww, r6.zwzz, r6.xyxx
        if_nz r4.z
          div r4.y, cb0[r0.w + 60].x, r4.y
          mul r6.xy, r4.yyyy, r6.xyxx
        endif
        mul r7.xyzw, r6.xyxy, cb0[87].wwww
        mad r6.xyzw, -r7.xyzw, r5.zwzw, r6.xyxy
        if_z r0.w
          mul r7.xyzw, r6.zwzw, cb0[64].xyxy
          mul r8.xyzw, cb0[86].yyyy, l(-7.19990158, -8.579733, -2.58234143, -6.140668)
          exp r8.xyzw, r8.xyzw
          div r4.y, r3.w, cb0[86].z
          add r9.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r8.xyzw, r4.yyyy, r9.xyzw, r8.xyzw
          mad r9.xyzw, r7.zwzw, l(-0.520550, -0.845855, -0.751771, -0.655454), r1.xyxy
          mad r10.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].xyxy
          mad r11.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].zwzw
          add r11.xyzw, r11.xyzw, cb0[68].xyxy
          min r9.xyzw, r9.xyzw, r11.xyzw
          max r9.xyzw, r10.xyzw, r9.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.y, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.y, r9.x
          add r9.x, r1.z, -r9.x
          mul r9.y, r1.z, cb0[84].z
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          sample_l_indexable(texture2d)(float,float,float,float) r9.z, r9.zwzz, t0.yzxw, s0, l(0.000000)
          add r9.w, -r9.z, l(1.000000)
          movc r9.z, r0.x, r9.w, r9.z
          add r9.z, r1.z, -r9.z
          lt r9.z, r9.y, r9.z
          movc r9.z, r9.z, l(0), l(1.000000)
          mad r12.xyzw, r7.zwzw, l(-0.678021, -0.483970, -0.854925, -0.490874), r1.xyxy
          min r12.xyzw, r11.xyzw, r12.xyzw
          max r12.xyzw, r10.xyzw, r12.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.w, r12.xyxx, t0.yzwx, s0, l(0.000000)
          add r12.x, -r9.w, l(1.000000)
          movc r9.w, r0.x, r12.x, r9.w
          add r9.w, r1.z, -r9.w
          lt r9.w, r9.y, r9.w
          movc r9.w, r9.w, l(0), l(1.000000)
          mul r9.w, r8.z, r9.w
          mad r9.x, r9.x, r8.x, r9.w
          sample_l_indexable(texture2d)(float,float,float,float) r9.w, r12.zwzz, t0.yzwx, s0, l(0.000000)
          add r12.x, -r9.w, l(1.000000)
          movc r9.w, r0.x, r12.x, r9.w
          add r9.w, r1.z, -r9.w
          lt r9.w, r9.y, r9.w
          movc r9.w, r9.w, l(0), l(1.000000)
          mul r9.w, r8.w, r9.w
          mad r9.z, r9.z, r8.y, r9.w
          add r8.xy, r8.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-2.31478643, -2.89526725, -3.05039549, -3.991754)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(-0.792431, 0.102304, -0.761083, 0.412305), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
          add r8.w, -r8.z, l(1.000000)
          movc r8.z, r0.x, r8.w, r8.z
          add r8.z, r1.z, -r8.z
          lt r8.z, r9.y, r8.z
          movc r8.z, r8.z, l(0), l(1.000000)
          mad r8.z, r8.z, r12.x, r9.x
          sample_l_indexable(texture2d)(float,float,float,float) r8.w, r13.zwzz, t0.yzwx, s0, l(0.000000)
          add r9.x, -r8.w, l(1.000000)
          movc r8.w, r0.x, r9.x, r8.w
          add r8.w, r1.z, -r8.w
          lt r8.w, r9.y, r8.w
          movc r8.w, r8.w, l(0), l(1.000000)
          mad r8.w, r8.w, r12.y, r9.z
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(-0.516157, 0.711853, -0.700168, 0.622896), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          add r8.xy, r12.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-1.642316, -3.31069326, -1.56545961, -0.724846363)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(-0.355834, -0.579066, -0.233941, -0.868254), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.x, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.y, r8.w
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(-0.490482, -0.444796, -0.319092, -0.232716), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          add r8.xy, r12.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-1.007788, -1.02969921, -1.71244168, -6.181365)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(-0.273454, 0.421808, -0.400938, 0.315500), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.x, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.y, r8.w
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(-0.275007, 0.638120, -0.458971, 0.872913), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          add r8.xy, r12.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-5.08163738, -5.330224, -0.879165471, -0.595332325)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(0.099781, -0.965326, 0.334974, -0.915804), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.x, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.y, r8.w
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(0.077748, -0.449646, 0.156905, -0.299496), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          add r8.xy, r12.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-0.826701760, -0.270535439, -6.51378965, -6.92056370)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(0.211989, 0.381204, 0.086743, 0.147352), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.x, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.y, r8.w
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(0.047982, 0.987892, 0.264924, 0.955706), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          add r8.xy, r12.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-6.25430250, -6.557017, -8.892467, -1.43309534)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(0.736900, -0.656468, 0.891683, -0.428688), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.x, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.y, r8.w
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(0.996095, -0.059922, 0.508179, 0.371795), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          add r8.xy, r12.zwzz, r8.xyxx
          mul r12.xyzw, cb0[86].yyyy, l(-3.670727, -7.835936, -7.05661964, -5.628084)
          exp r12.xyzw, r12.xyzw
          add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
          mad r13.xyzw, r7.zwzw, l(0.799534, 0.458109, 0.757355, 0.646281), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.x, r8.z
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.y, r8.w
          add r8.xy, r8.xyxx, r12.xyxx
          mad r13.xyzw, r7.zwzw, l(0.618847, 0.775926, -0.945555, -0.256700), r1.xyxy
          min r13.xyzw, r11.xyzw, r13.xyzw
          max r13.xyzw, r10.xyzw, r13.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.z, r9.x, r12.z, r8.z
          mov x8[0].x, r8.z
          add r8.xy, r12.zwzz, r8.xyxx
          mov x9[0].x, r8.x
          sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
          add r9.z, -r9.x, l(1.000000)
          movc r9.x, r0.x, r9.z, r9.x
          add r9.x, r1.z, -r9.x
          lt r9.x, r9.y, r9.x
          movc r9.x, r9.x, l(0), l(1.000000)
          mad r8.w, r9.x, r12.w, r8.w
          mov x8[1].x, r8.w
          mov x9[1].x, r8.y
          div r9.xz, r8.zzwz, r8.xxyx
          add r9.x, -r9.z, r9.x
          ge r9.x, cb0[86].w, |r9.x|
          if_z r9.x
            mul r12.xyzw, cb0[86].yyyy, l(-2.858026, -1.79378712, -2.96656418, -2.513609)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.787474, -0.350792, -0.570386, 0.425458), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.834992, 0.251581, -0.497132, -0.658249), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-2.37573552, -1.10526347, -0.803203702, -0.611408174)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.324060, -0.739428, -0.322221, -0.427310), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.413079, -0.107845, -0.175731, 0.297404), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-0.954242408, -2.72319531, -1.61956906, -3.85246587)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.072165, 0.478476, -0.261705, 0.807197), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.401925, 0.541754, 0.457626, -0.810501), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-2.325746, -0.932220578, -0.230742186, -1.12492311)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.481411, -0.639601, 0.292735, -0.375278), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.009136, -0.147521, 0.498175, 0.212168), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-0.845245, -2.57143140, -1.46358633, -2.53469944)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.341249, 0.283087, 0.458700, 0.693847), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.012386, 0.637289, 0.712021, -0.421494), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-1.67824161, -3.67468786, -2.04183936, -2.84555030)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.514875, -0.455643, 0.876284, 0.285730), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.677064, 0.338902, 0.604616, 0.612818), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-2.93084764, -2.16161823, -1.428795, -4.45605373)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.865207, -0.079617, -0.753249, -0.188573), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.594055, 0.205390, -0.951743, 0.071686), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-1.51467049, -1.35937870, -0.454479277, -0.786625087)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.205326, -0.616743, -0.048028, -0.608357), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.265306, -0.051333, -0.095825, -0.409232), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.z, r9.z, r12.z, r8.z
            mov x8[0].x, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mov x9[0].x, r8.x
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r8.w, r9.z, r12.w, r8.w
            mov x8[1].x, r8.w
            mov x9[1].x, r8.y
            div r8.xy, r8.zwzz, r8.xyxx
            add r8.x, -r8.y, r8.x
            ge r8.x, cb0[86].w, |r8.x|
            or r8.x, r9.x, r8.x
          else
            mov r8.x, l(-1)
          endif
          if_z r8.x
            mul r8.xyzw, cb0[86].yyyy, l(-0.454922915, -0.488759756, -3.00368571, -2.19938278)
            exp r8.xyzw, r8.xyzw
            add r12.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r4.yyyy, r12.xyzw, r8.xyzw
            mad r12.xyzw, r7.zwzw, l(-0.016320, 0.269958, -0.249026, 0.143399), r1.xyxy
            min r12.xyzw, r11.xyzw, r12.xyzw
            max r12.xyzw, r10.xyzw, r12.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r12.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mov r9.z, x8[0].x
            mad r9.x, r9.x, r8.x, r9.z
            mov r9.z, x9[0].x
            add r8.x, r8.x, r9.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r12.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mov r9.w, x8[1].x
            mad r9.z, r9.z, r8.y, r9.w
            mov r9.w, x9[1].x
            add r8.y, r8.y, r9.w
            mad r12.xyzw, r7.zwzw, l(-0.077402, 0.871890, 0.320827, -0.713453), r1.xyxy
            min r12.xyzw, r11.xyzw, r12.xyzw
            max r12.xyzw, r10.xyzw, r12.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.w, r12.xyxx, t0.yzwx, s0, l(0.000000)
            add r12.x, -r9.w, l(1.000000)
            movc r9.w, r0.x, r12.x, r9.w
            add r9.w, r1.z, -r9.w
            lt r9.w, r9.y, r9.w
            movc r9.w, r9.w, l(0), l(1.000000)
            mad r9.x, r9.w, r8.z, r9.x
            add r8.x, r8.z, r8.x
            sample_l_indexable(texture2d)(float,float,float,float) r8.z, r12.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r8.z, l(1.000000)
            movc r8.z, r0.x, r9.w, r8.z
            add r8.z, r1.z, -r8.z
            lt r8.z, r9.y, r8.z
            movc r8.z, r8.z, l(0), l(1.000000)
            mad r8.z, r8.z, r8.w, r9.z
            add r8.y, r8.w, r8.y
            mul r12.xyzw, cb0[86].yyyy, l(-2.64347386, -0.213732481, -0.532696843, -0.526722968)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.176208, -0.821267, 0.137687, -0.001624), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.w, r13.xyxx, t0.yzwx, s0, l(0.000000)
            add r9.z, -r8.w, l(1.000000)
            movc r8.w, r0.x, r9.z, r8.w
            add r8.w, r1.z, -r8.w
            lt r8.w, r9.y, r8.w
            movc r8.w, r8.w, l(0), l(1.000000)
            mad r8.w, r8.w, r12.x, r9.x
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.y, r8.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.300395, -0.071291, 0.273251, 0.137443), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.z, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.w, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-0.841880858, -2.84530139, -4.22661066, -3.85716414)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.438788, 0.053885, 0.126562, 0.851497), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.x, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.y, r8.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.421608, 0.847508, 0.893173, -0.262668), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.z, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.w, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-2.67585087, -2.05042386, -3.10861135, -1.78108454)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.837432, -0.101072, 0.734523, 0.189552), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.x, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.y, r8.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.880797, 0.075944, -0.708420, -0.029535), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.z, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.w, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-1.43741608, -2.969294, -0.427928865, -0.981529)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.555554, -0.298719, -0.045759, -0.871110), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.x, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.y, r8.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.138755, -0.215934, -0.488585, 0.069882), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.z, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.w, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-0.183740988, -1.48677206, -1.46949327, -0.856197476)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.112210, 0.041340, 0.138922, -0.628008), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.x, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.y, r8.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.317340, -0.554506, 0.375213, -0.244039), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.z, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.w, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-1.73866272, -1.12745857, -1.98774683, -1.304964)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.256567, 0.651665, 0.135182, 0.525159), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.x, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.y, r8.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.701911, -0.258122, 0.549497, -0.228906), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.z, r8.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.w, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-1.35949278, -1.304402, -1.39065552, -1.56391883)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.605768, 0.074079, -0.582759, -0.120620), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r13.xyxx, t0.yxzw, s0, l(0.000000)
            add r9.x, -r4.y, l(1.000000)
            movc r4.y, r0.x, r9.x, r4.y
            add r4.y, r1.z, -r4.y
            lt r4.y, r9.y, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mad r4.y, r4.y, r12.x, r8.w
            add r8.x, r8.x, r12.x
            sample_l_indexable(texture2d)(float,float,float,float) r8.w, r13.zwzz, t0.yzwx, s0, l(0.000000)
            add r9.x, -r8.w, l(1.000000)
            movc r8.w, r0.x, r9.x, r8.w
            add r8.w, r1.z, -r8.w
            lt r8.w, r9.y, r8.w
            movc r8.w, r8.w, l(0), l(1.000000)
            mad r8.z, r8.w, r12.y, r8.z
            add r8.y, r8.y, r12.y
            mad r7.xyzw, r7.xyzw, l(0.351929, 0.508746, 0.653662, -0.103267), r1.xyxy
            min r7.xyzw, r11.xyzw, r7.xyzw
            max r7.xyzw, r10.xyzw, r7.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r7.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r1.z, -r7.x
            lt r7.x, r9.y, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r12.z, r4.y
            mov x8[0].x, r4.y
            add r4.y, r12.z, r8.x
            mov x9[0].x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r7.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.x, -r4.y, l(1.000000)
            movc r4.y, r0.x, r7.x, r4.y
            add r4.y, r1.z, -r4.y
            lt r4.y, r9.y, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mad r4.y, r4.y, r12.w, r8.z
            mov x8[1].x, r4.y
            add r4.y, r12.w, r8.y
            mov x9[1].x, r4.y
          endif
          mov r4.y, x8[0].x
          mov r7.x, x8[1].x
          add r4.y, r4.y, r7.x
          mov r7.x, x9[0].x
          mov r7.y, x9[1].x
          add r7.x, r7.y, r7.x
          div r4.w, r4.y, r7.x
        else
          ieq r4.y, r0.w, l(1)
          if_nz r4.y
            mul r7.xyzw, r6.zwzw, cb0[65].xyxy
            mul r8.xyzw, cb0[86].yyyy, l(-4.31136370, -3.52627683, -1.25792563, -1.55836809)
            exp r8.xyzw, r8.xyzw
            div r4.y, r3.w, cb0[86].z
            add r9.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r4.yyyy, r9.xyzw, r8.xyzw
            mad r9.xyzw, r7.zwzw, l(-0.554247, -0.771111, -0.739494, -0.535813), r1.xyxy
            mad r10.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].xyxy
            mad r11.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].zwzw
            add r11.xyzw, r11.xyzw, cb0[69].xyxy
            min r9.xyzw, r9.xyzw, r11.xyzw
            max r9.xyzw, r10.xyzw, r9.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r9.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.y, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.y, r9.x
            add r9.x, r1.z, -r9.x
            mul r9.y, r1.z, cb0[84].z
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            sample_l_indexable(texture2d)(float,float,float,float) r9.z, r9.zwzz, t0.yzxw, s0, l(0.000000)
            add r9.w, -r9.z, l(1.000000)
            movc r9.z, r0.x, r9.w, r9.z
            add r9.z, r1.z, -r9.z
            lt r9.z, r9.y, r9.z
            movc r9.z, r9.z, l(0), l(1.000000)
            mad r12.xyzw, r7.zwzw, l(-0.581835, -0.004852, -0.617420, -0.234535), r1.xyxy
            min r12.xyzw, r11.xyzw, r12.xyzw
            max r12.xyzw, r10.xyzw, r12.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.w, r12.xyxx, t0.yzwx, s0, l(0.000000)
            add r12.x, -r9.w, l(1.000000)
            movc r9.w, r0.x, r12.x, r9.w
            add r9.w, r1.z, -r9.w
            lt r9.w, r9.y, r9.w
            movc r9.w, r9.w, l(0), l(1.000000)
            mul r9.w, r8.z, r9.w
            mad r9.x, r9.x, r8.x, r9.w
            sample_l_indexable(texture2d)(float,float,float,float) r9.w, r12.zwzz, t0.yzwx, s0, l(0.000000)
            add r12.x, -r9.w, l(1.000000)
            movc r9.w, r0.x, r12.x, r9.w
            add r9.w, r1.z, -r9.w
            lt r9.w, r9.y, r9.w
            movc r9.w, r9.w, l(0), l(1.000000)
            mul r9.w, r8.w, r9.w
            mad r9.z, r9.z, r8.y, r9.w
            add r8.xy, r8.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-1.93653631, -2.47095561, -4.553454, -2.50024080)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.681692, 0.284707, -0.812983, 0.104160), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.z, r13.xyxx, t0.yzxw, s0, l(0.000000)
            add r8.w, -r8.z, l(1.000000)
            movc r8.z, r0.x, r8.w, r8.z
            add r8.z, r1.z, -r8.z
            lt r8.z, r9.y, r8.z
            movc r8.z, r8.z, l(0), l(1.000000)
            mad r8.z, r8.z, r12.x, r9.x
            sample_l_indexable(texture2d)(float,float,float,float) r8.w, r13.zwzz, t0.yzwx, s0, l(0.000000)
            add r9.x, -r8.w, l(1.000000)
            movc r8.w, r0.x, r9.x, r8.w
            add r8.w, r1.z, -r8.w
            lt r8.w, r9.y, r8.w
            movc r8.w, r8.w, l(0), l(1.000000)
            mad r8.w, r8.w, r12.y, r9.z
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.607105, 0.847591, -0.601184, 0.562426), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-4.74890566, -2.08656836, -0.674442112, -0.563664)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.023469, -0.962523, -0.123936, -0.754448), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.004852, -0.373394, -0.183569, -0.266274), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-0.901273072, -0.228480220, -2.20538688, -5.671054)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(-0.061067, 0.460555, -0.085910, 0.118625), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(-0.221656, 0.751152, -0.275979, 0.981567), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-2.09949541, -4.05256033, -0.993613303, -1.25950646)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.404157, -0.651479, 0.320597, -0.883358), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.465560, -0.176183, 0.410443, -0.413068), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-0.814901173, -0.939830, -1.95053983, -3.42842364)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.413556, 0.123325, 0.353557, 0.322733), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.492660, 0.553880, 0.266579, 0.867061), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-2.98889518, -2.22883439, -6.24990940, -2.74358654)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.933348, -0.629810, 0.863582, -0.852290), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.920530, -0.355693, 0.849300, -0.048555), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            add r8.xy, r12.zwzz, r8.xyxx
            mul r12.xyzw, cb0[86].yyyy, l(-4.868580, -2.09602141, -3.33378029, -2.11065435)
            exp r12.xyzw, r12.xyzw
            add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
            mad r13.xyzw, r7.zwzw, l(0.952940, 0.156896, 0.691031, 0.330729), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.x, r8.z
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.y, r8.w
            add r8.xy, r8.xyxx, r12.xyxx
            mad r13.xyzw, r7.zwzw, l(0.898068, 0.633778, 0.890622, 0.850581), r1.xyxy
            min r13.xyzw, r11.xyzw, r13.xyzw
            max r13.xyzw, r10.xyzw, r13.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.z, r9.x, r12.z, r8.z
            mov x10[0].x, r8.z
            add r8.xy, r12.zwzz, r8.xyxx
            mov x11[0].x, r8.x
            sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
            add r9.z, -r9.x, l(1.000000)
            movc r9.x, r0.x, r9.z, r9.x
            add r9.x, r1.z, -r9.x
            lt r9.x, r9.y, r9.x
            movc r9.x, r9.x, l(0), l(1.000000)
            mad r8.w, r9.x, r12.w, r8.w
            mov x10[1].x, r8.w
            mov x11[1].x, r8.y
            div r9.xz, r8.zzwz, r8.xxyx
            add r9.x, -r9.z, r9.x
            lt r9.x, cb0[86].w, |r9.x|
            if_nz r9.x
              mul r12.xyzw, cb0[86].yyyy, l(-3.340066, -2.93286467, -3.71318436, -7.903147)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(-0.786126, -0.767632, -0.822138, -0.281655), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(-0.918943, -0.094150, -0.934812, 0.366741), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-1.96691215, -3.77197456, -2.417392, -3.47431779)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(-0.835200, 0.937803, -0.873226, 0.623890), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(-0.341594, -0.737541, -0.483383, -0.976928), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-1.07460284, -0.362947851, -0.695641100, -0.693262100)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(-0.204932, -0.483566, -0.214393, -0.059236), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(-0.230811, 0.305094, -0.367534, 0.102451), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-1.645441, -1.18442786, -1.92146969, -0.611149)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(-0.353130, 0.581530, 0.181860, -0.529649), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(0.087741, -0.730766, 0.188208, -0.289529), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-0.137389123, -0.362524211, -0.549391091, -1.371425)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(0.035981, -0.083407, 0.212928, 0.063509), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(0.145970, 0.281045, 0.236610, 0.566027), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-2.062181, -3.34212351, -4.833588, -2.24719357)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(0.021332, 0.760247, 0.637135, -0.637623), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(0.535875, -0.885556, 0.686331, -0.389935), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-1.733622, -1.39554238, -2.12258387, -5.77069855)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(0.677236, -0.174291, 0.615894, 0.070345), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r13.xyzw, r7.zwzw, l(0.715629, 0.999939, 0.676260, 0.711600), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.xyxx, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.z, r9.x, r12.z, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r9.x, r13.zwzz, t0.xyzw, s0, l(0.000000)
              add r9.z, -r9.x, l(1.000000)
              movc r9.x, r0.x, r9.z, r9.x
              add r9.x, r1.z, -r9.x
              lt r9.x, r9.y, r9.x
              movc r9.x, r9.x, l(0), l(1.000000)
              mad r8.w, r9.x, r12.w, r8.w
              add r8.xy, r12.zwzz, r8.xyxx
              mul r12.xyzw, cb0[86].yyyy, l(-0.851650417, -1.39399922, -1.217193, -6.313437)
              exp r12.xyzw, r12.xyzw
              add r13.xyzw, -r12.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r12.xyzw, r4.yyyy, r13.xyzw, r12.xyzw
              mad r13.xyzw, r7.zwzw, l(-0.409772, -0.175695, -0.476669, -0.395672), r1.xyxy
              min r13.xyzw, r11.xyzw, r13.xyzw
              max r13.xyzw, r10.xyzw, r13.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r4.y, r13.xyxx, t0.yxzw, s0, l(0.000000)
              add r9.x, -r4.y, l(1.000000)
              movc r4.y, r0.x, r9.x, r4.y
              add r4.y, r1.z, -r4.y
              lt r4.y, r9.y, r4.y
              movc r4.y, r4.y, l(0), l(1.000000)
              mad r4.y, r4.y, r12.x, r8.z
              sample_l_indexable(texture2d)(float,float,float,float) r8.z, r13.zwzz, t0.yzxw, s0, l(0.000000)
              add r9.x, -r8.z, l(1.000000)
              movc r8.z, r0.x, r9.x, r8.z
              add r8.z, r1.z, -r8.z
              lt r8.z, r9.y, r8.z
              movc r8.z, r8.z, l(0), l(1.000000)
              mad r8.z, r8.z, r12.y, r8.w
              add r8.xy, r8.xyxx, r12.xyxx
              mad r7.xyzw, r7.xyzw, l(-0.439802, 0.362407, 0.506333, 0.876888), r1.xyxy
              min r7.xyzw, r11.xyzw, r7.xyzw
              max r7.xyzw, r10.xyzw, r7.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r7.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r1.z, -r7.x
              lt r7.x, r9.y, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r4.y, r7.x, r12.z, r4.y
              mov x10[0].x, r4.y
              add r7.xy, r12.zwzz, r8.xyxx
              mov x11[0].x, r7.x
              sample_l_indexable(texture2d)(float,float,float,float) r4.y, r7.zwzz, t0.yxzw, s0, l(0.000000)
              add r7.x, -r4.y, l(1.000000)
              movc r4.y, r0.x, r7.x, r4.y
              add r4.y, r1.z, -r4.y
              lt r4.y, r9.y, r4.y
              movc r4.y, r4.y, l(0), l(1.000000)
              mad r4.y, r4.y, r12.w, r8.z
              mov x10[1].x, r4.y
              mov x11[1].x, r7.y
            endif
            mov r4.y, x10[0].x
            mov r7.x, x10[1].x
            add r4.y, r4.y, r7.x
            mov r7.x, x11[0].x
            mov r7.y, x11[1].x
            add r7.x, r7.y, r7.x
            div r4.w, r4.y, r7.x
          else
            mul r7.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
            mul r8.xyzw, cb0[86].yyyy, l(-3.15952015, -1.38548744, -6.94438553, -1.06862068)
            exp r8.xyzw, r8.xyzw
            div r3.w, r3.w, cb0[86].z
            add r9.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r3.wwww, r9.xyzw, r8.xyzw
            mad r7.xyzw, r7.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            mad r9.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r0.w + 68].xyxy
            mad r10.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r0.w + 68].zwzw
            add r10.xyzw, r10.xyzw, cb0[r0.w + 68].xyxy
            min r7.xyzw, r7.xyzw, r10.xyzw
            max r7.xyzw, r9.xyzw, r7.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r7.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.x, -r4.y, l(1.000000)
            movc r4.y, r0.x, r7.x, r4.y
            add r4.y, r1.z, -r4.y
            mul r7.x, r1.z, cb0[84].z
            lt r4.y, r7.x, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r7.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r1.z, -r7.y
            lt r7.y, r7.x, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mul r7.y, r8.y, r7.y
            mad r4.y, r4.y, r8.x, r7.y
            add r7.y, r8.y, r8.x
            mul r11.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
            mad r11.xyzw, r11.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r11.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r8.z, r4.y
            add r7.y, r8.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r11.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r8.w, r4.y
            add r7.y, r8.w, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
            mul r11.xyzw, cb0[86].yyyy, l(-1.86925554, -3.26677227, -2.21088624, -3.31532168)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.x, r4.y
            add r7.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.y, r4.y
            add r7.y, r11.y, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.z, r4.y
            add r7.y, r11.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.w, r4.y
            add r7.y, r11.w, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
            mul r11.xyzw, cb0[86].yyyy, l(-2.65607238, -0.509738743, -0.396726757, -1.48935831)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.x, r4.y
            add r7.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.y, r4.y
            add r7.y, r11.y, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.z, r4.y
            add r7.y, r11.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.w, r4.y
            add r7.y, r11.w, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
            mul r11.xyzw, cb0[86].yyyy, l(-3.700013, -1.88057292, -6.43597031, -1.007971)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.x, r4.y
            add r7.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.y, r4.y
            add r7.y, r11.y, r7.y
            mul r8.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.z, r4.y
            add r7.y, r11.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.w, r4.y
            add r7.y, r11.w, r7.y
            mul r8.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
            mul r11.xyzw, cb0[86].yyyy, l(-0.818598330, -0.207658067, -1.42133641, -1.874704)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.x, r4.y
            add r7.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.y, r4.y
            add r7.y, r11.y, r7.y
            mul r8.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.z, r4.y
            add r7.y, r11.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.w, r4.y
            add r7.y, r11.w, r7.y
            mul r8.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
            mul r11.xyzw, cb0[86].yyyy, l(-3.30185962, -2.06184530, -3.57361269, -1.25295591)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.x, r4.y
            add r7.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.y, r4.y
            add r7.y, r11.y, r7.y
            mul r8.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.z, r4.y
            add r7.y, r11.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.w, r4.y
            add r7.y, r11.w, r7.y
            mul r8.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
            mul r11.xyzw, cb0[86].yyyy, l(-2.69696546, -3.500330, -5.50587749, -3.47976851)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.x, r4.y
            add r7.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.y, r4.y
            add r7.y, r11.y, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.xyxx, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.z, r4.y
            add r7.y, r11.z, r7.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.z, r8.zwzz, t0.yzxw, s0, l(0.000000)
            add r7.w, -r7.z, l(1.000000)
            movc r7.z, r0.x, r7.w, r7.z
            add r7.z, r1.z, -r7.z
            lt r7.z, r7.x, r7.z
            movc r7.z, r7.z, l(0), l(1.000000)
            mad r4.y, r7.z, r11.w, r4.y
            add r7.y, r11.w, r7.y
            mul r8.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
            mul r11.xyzw, cb0[86].yyyy, l(-4.287428, -1.03613436, -0.570473433, -4.38599825)
            exp r11.xyzw, r11.xyzw
            add r12.xyzw, -r11.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r11.xyzw, r3.wwww, r12.xyzw, r11.xyzw
            mad r8.xyzw, r8.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r8.xyxx, t0.yzwx, s0, l(0.000000)
            add r7.z, -r3.w, l(1.000000)
            movc r3.w, r0.x, r7.z, r3.w
            add r3.w, r1.z, -r3.w
            lt r3.w, r7.x, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r3.w, r3.w, r11.x, r4.y
            add r4.y, r7.y, r11.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r8.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r1.z, -r7.y
            lt r7.y, r7.x, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r11.y, r3.w
            add r4.y, r11.y, r4.y
            mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
            mad r6.xyzw, r6.xyzw, cb0[r0.w + 64].xyxy, r1.xyxy
            min r6.xyzw, r10.xyzw, r6.xyzw
            max r6.xyzw, r9.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r0.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r1.x, -r0.w, l(1.000000)
            movc r0.w, r0.x, r1.x, r0.w
            add r0.w, -r0.w, r1.z
            lt r0.w, r7.x, r0.w
            movc r0.w, r0.w, l(0), l(1.000000)
            mad r0.w, r0.w, r11.z, r3.w
            add r1.x, r11.z, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r1.y, r6.zwzz, t0.yxzw, s0, l(0.000000)
            add r3.w, -r1.y, l(1.000000)
            movc r1.y, r0.x, r3.w, r1.y
            add r1.y, -r1.y, r1.z
            lt r1.y, r7.x, r1.y
            movc r1.y, r1.y, l(0), l(1.000000)
            mad r0.w, r1.y, r11.w, r0.w
            add r1.x, r11.w, r1.x
            div r4.w, r0.w, r1.x
          endif
        endif
      endif
      add r0.y, r0.y, cb0[r1.w + 80].x
      mul r0.w, r0.y, cb0[r1.w + 80].y
      if_nz r4.z
        mad r0.y, r0.y, cb0[r1.w + 80].y, -cb0[r1.w + 60].x
        div r0.y, r0.y, r0.w
        mul r1.xy, r0.yyyy, cb0[r1.w + 60].zwzz
      else
        mov r1.xy, cb0[r1.w + 60].zwzz
      endif
      mul r6.xyzw, r1.xyxy, cb0[87].zzzz
      mad r6.xyzw, -r6.xyzw, r5.xyxy, r1.xyxy
      add r1.xy, r3.xyxx, -cb0[8].zwzz
      mad r7.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r1.w + 68].xyxy
      mad r8.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r1.w + 68].zwzw
      add r8.xyzw, r8.xyzw, cb0[r1.w + 68].xyxy
      min r1.xy, r1.xyxx, r8.xyxx
      max r1.xy, r7.xyxx, r1.xyxx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r1.xyxx, t2.yxzw, s0, l(0.000000)
      add r1.x, -r0.y, l(1.000000)
      movc r0.y, r0.x, r1.x, r0.y
      lt r1.x, r0.y, r3.z
      add r1.y, -r0.y, r3.z
      div r1.y, r1.y, r3.z
      add r1.y, -r1.y, l(2.000000)
      mul r1.z, |r1.y|, |r1.y|
      mul r1.z, r1.z, r1.z
      mul r9.z, r1.z, |r1.y|
      mul r9.y, r0.y, r9.z
      mov r9.x, l(1.000000)
      and r9.xyz, r1.xxxx, r9.xyzx
      mad r10.xyzw, cb0[8].zwzw, l(-1.000000, 0.000000, -1.000000, 1.000000), r3.xyxy
      min r10.xyzw, r8.xyzw, r10.xyzw
      max r10.xyzw, r7.xyzw, r10.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r10.xyxx, t2.yxzw, s0, l(0.000000)
      add r1.y, -r0.y, l(1.000000)
      movc r0.y, r0.x, r1.y, r0.y
      lt r1.y, r0.y, r3.z
      add r1.z, -r0.y, r3.z
      div r1.z, r1.z, r3.z
      add r1.z, -r1.z, l(2.000000)
      mul r3.w, |r1.z|, |r1.z|
      mul r3.w, r3.w, r3.w
      mul r4.y, |r1.z|, r3.w
      mad r11.y, r0.y, r4.y, r9.y
      mad r11.z, |r1.z|, r3.w, r9.z
      movc r11.x, r1.x, l(2.000000), l(1.000000)
      movc r1.xyz, r1.yyyy, r11.xyzx, r9.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r10.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mad r9.xyzw, cb0[8].zwzw, l(0.000000, -1.000000, 0.000000, 1.000000), r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      min r4.yz, r3.xxyx, r8.zzwz
      max r4.yz, r7.xxyx, r4.yyzy
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r4.yzyy, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mad r9.xyzw, cb0[8].zwzw, l(1.000000, -1.000000, 1.000000, 0.000000), r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      add r4.yz, r3.xxyx, cb0[8].zzwz
      min r4.yz, r8.xxyx, r4.yyzy
      max r4.yz, r7.xxyx, r4.yyzy
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r4.yzyy, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r9.xyzw, r6.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
      mad r9.xyzw, r9.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r9.xyzw, r8.xyzw, r9.xyzw
      max r9.xyzw, r7.xyzw, r9.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r10.y, r0.y, r5.x, r1.y
      mad r10.z, |r4.y|, r4.z, r1.z
      add r10.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r10.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r9.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r9.y, r0.y, r5.x, r1.y
      mad r9.z, |r4.y|, r4.z, r1.z
      add r9.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r9.xyzx, r1.xyzx
      mul r6.xyzw, r6.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
      mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
      min r6.xyzw, r8.xyzw, r6.xyzw
      max r6.xyzw, r7.xyzw, r6.xyzw
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r6.xyxx, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r7.y, r0.y, r5.x, r1.y
      mad r7.z, |r4.y|, r4.z, r1.z
      add r7.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r7.xyzx, r1.xyzx
      sample_l_indexable(texture2d)(float,float,float,float) r0.y, r6.zwzz, t2.yxzw, s0, l(0.000000)
      add r3.w, -r0.y, l(1.000000)
      movc r0.y, r0.x, r3.w, r0.y
      lt r3.w, r0.y, r3.z
      add r4.y, -r0.y, r3.z
      div r4.y, r4.y, r3.z
      add r4.y, -r4.y, l(2.000000)
      mul r4.z, |r4.y|, |r4.y|
      mul r4.z, r4.z, r4.z
      mul r5.x, r4.z, |r4.y|
      mad r6.y, r0.y, r5.x, r1.y
      mad r6.z, |r4.y|, r4.z, r1.z
      add r6.x, r1.x, l(1.000000)
      movc r1.xyz, r3.wwww, r6.xyzx, r1.xyzx
      eq r0.y, r1.x, l(0.000000)
      if_nz r0.y
        mov r1.x, l(1.000000)
      endif
      if_z r0.y
        div r6.z, r1.y, r1.z
        ishl r0.y, r1.w, l(2)
        mad r6.xy, r3.xyxx, l(2.000000, -2.000000, 0.000000, 0.000000), l(-1.000000, 1.000000, 0.000000, 0.000000)
        mov r6.w, l(1.000000)
        dp4 r1.y, r6.xyzw, cb0[r0.y + 13].xyzw
        dp4 r0.y, r6.xyzw, cb0[r0.y + 14].xyzw
        div r0.y, r1.y, r0.y
        add r0.y, r0.y, cb0[r1.w + 80].x
        mul r1.yz, cb0[86].xxxx, cb0[r1.w + 60].zzwz
        mad r0.y, -r0.y, cb0[r1.w + 80].y, r0.w
        min r0.y, r0.y, cb0[85].w
        div r0.y, r0.y, cb0[85].z
        mad r4.yz, -cb0[r1.w + 60].zzwz, cb0[86].xxxx, cb0[r1.w + 60].zzwz
        mad r1.yz, r0.yyyy, r4.yyzy, r1.yyzy
        eq r3.w, cb0[85].x, l(1.000000)
        if_nz r3.w
          div r0.w, cb0[r1.w + 60].x, r0.w
          mul r1.yz, r0.wwww, r1.yyzy
        endif
        mul r6.xyzw, r1.yzyz, cb0[87].wwww
        mad r5.xyzw, -r6.xyzw, r5.zwzw, r1.yzyz
        if_z r1.w
          mul r6.xyzw, r5.zwzw, cb0[64].xyxy
          mul r7.xyzw, cb0[86].yyyy, l(-7.19990158, -8.579733, -2.58234143, -6.140668)
          exp r7.xyzw, r7.xyzw
          div r0.w, r0.y, cb0[86].z
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(-0.520550, -0.845855, -0.751771, -0.655454), r3.xyxy
          mad r9.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].xyxy
          mad r10.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[68].zwzw
          add r10.xyzw, r10.xyzw, cb0[68].xyxy
          min r8.xyzw, r8.xyzw, r10.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r1.y, r8.xyxx, t0.yxzw, s0, l(0.000000)
          add r1.z, -r1.y, l(1.000000)
          movc r1.y, r0.x, r1.z, r1.y
          add r1.y, -r1.y, r3.z
          mul r1.z, r3.z, cb0[84].z
          lt r1.y, r1.z, r1.y
          movc r1.y, r1.y, l(0), l(1.000000)
          sample_l_indexable(texture2d)(float,float,float,float) r3.w, r8.zwzz, t0.yzwx, s0, l(0.000000)
          add r4.y, -r3.w, l(1.000000)
          movc r3.w, r0.x, r4.y, r3.w
          add r3.w, -r3.w, r3.z
          lt r3.w, r1.z, r3.w
          movc r3.w, r3.w, l(0), l(1.000000)
          mad r8.xyzw, r6.zwzw, l(-0.678021, -0.483970, -0.854925, -0.490874), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r4.y, r8.xyxx, t0.yxzw, s0, l(0.000000)
          add r4.z, -r4.y, l(1.000000)
          movc r4.y, r0.x, r4.z, r4.y
          add r4.y, r3.z, -r4.y
          lt r4.y, r1.z, r4.y
          movc r4.y, r4.y, l(0), l(1.000000)
          mul r4.y, r7.z, r4.y
          mad r1.y, r1.y, r7.x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r4.y, r8.zwzz, t0.yxzw, s0, l(0.000000)
          add r4.z, -r4.y, l(1.000000)
          movc r4.y, r0.x, r4.z, r4.y
          add r4.y, r3.z, -r4.y
          lt r4.y, r1.z, r4.y
          movc r4.y, r4.y, l(0), l(1.000000)
          mul r4.y, r7.w, r4.y
          mad r3.w, r3.w, r7.y, r4.y
          add r4.yz, r7.zzwz, r7.xxyx
          mul r7.xyzw, cb0[86].yyyy, l(-2.31478643, -2.89526725, -3.05039549, -3.991754)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(-0.792431, 0.102304, -0.761083, 0.412305), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(-0.516157, 0.711853, -0.700168, 0.622896), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          add r4.yz, r7.zzwz, r4.yyzy
          mul r7.xyzw, cb0[86].yyyy, l(-1.642316, -3.31069326, -1.56545961, -0.724846363)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(-0.355834, -0.579066, -0.233941, -0.868254), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(-0.490482, -0.444796, -0.319092, -0.232716), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          add r4.yz, r7.zzwz, r4.yyzy
          mul r7.xyzw, cb0[86].yyyy, l(-1.007788, -1.02969921, -1.71244168, -6.181365)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(-0.273454, 0.421808, -0.400938, 0.315500), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(-0.275007, 0.638120, -0.458971, 0.872913), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          add r4.yz, r7.zzwz, r4.yyzy
          mul r7.xyzw, cb0[86].yyyy, l(-5.08163738, -5.330224, -0.879165471, -0.595332325)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(0.099781, -0.965326, 0.334974, -0.915804), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(0.077748, -0.449646, 0.156905, -0.299496), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          add r4.yz, r7.zzwz, r4.yyzy
          mul r7.xyzw, cb0[86].yyyy, l(-0.826701760, -0.270535439, -6.51378965, -6.92056370)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(0.211989, 0.381204, 0.086743, 0.147352), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(0.047982, 0.987892, 0.264924, 0.955706), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          add r4.yz, r7.zzwz, r4.yyzy
          mul r7.xyzw, cb0[86].yyyy, l(-6.25430250, -6.557017, -8.892467, -1.43309534)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(0.736900, -0.656468, 0.891683, -0.428688), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(0.996095, -0.059922, 0.508179, 0.371795), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          add r4.yz, r7.zzwz, r4.yyzy
          mul r7.xyzw, cb0[86].yyyy, l(-3.670727, -7.835936, -7.05661964, -5.628084)
          exp r7.xyzw, r7.xyzw
          add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
          mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
          mad r8.xyzw, r6.zwzw, l(0.799534, 0.458109, 0.757355, 0.646281), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r1.y, r8.x, r7.x, r1.y
          sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r8.y, -r8.x, l(1.000000)
          movc r8.x, r0.x, r8.y, r8.x
          add r8.x, r3.z, -r8.x
          lt r8.x, r1.z, r8.x
          movc r8.x, r8.x, l(0), l(1.000000)
          mad r3.w, r8.x, r7.y, r3.w
          add r4.yz, r4.yyzy, r7.xxyx
          mad r8.xyzw, r6.zwzw, l(0.618847, 0.775926, -0.945555, -0.256700), r3.xyxy
          min r8.xyzw, r10.xyzw, r8.xyzw
          max r8.xyzw, r9.xyzw, r8.xyzw
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r1.y, r7.x, r7.z, r1.y
          mov x12[0].x, r1.y
          add r4.yz, r7.zzwz, r4.yyzy
          mov x13[0].x, r4.y
          sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
          add r7.y, -r7.x, l(1.000000)
          movc r7.x, r0.x, r7.y, r7.x
          add r7.x, r3.z, -r7.x
          lt r7.x, r1.z, r7.x
          movc r7.x, r7.x, l(0), l(1.000000)
          mad r3.w, r7.x, r7.w, r3.w
          mov x12[1].x, r3.w
          mov x13[1].x, r4.z
          div r7.x, r1.y, r4.y
          div r7.y, r3.w, r4.z
          add r7.x, -r7.y, r7.x
          ge r7.x, cb0[86].w, |r7.x|
          if_z r7.x
            mul r8.xyzw, cb0[86].yyyy, l(-2.858026, -1.79378712, -2.96656418, -2.513609)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(-0.787474, -0.350792, -0.570386, 0.425458), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(-0.834992, 0.251581, -0.497132, -0.658249), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-2.37573552, -1.10526347, -0.803203702, -0.611408174)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(-0.324060, -0.739428, -0.322221, -0.427310), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(-0.413079, -0.107845, -0.175731, 0.297404), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-0.954242408, -2.72319531, -1.61956906, -3.85246587)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(-0.072165, 0.478476, -0.261705, 0.807197), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(-0.401925, 0.541754, 0.457626, -0.810501), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-2.325746, -0.932220578, -0.230742186, -1.12492311)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(0.481411, -0.639601, 0.292735, -0.375278), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(0.009136, -0.147521, 0.498175, 0.212168), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-0.845245, -2.57143140, -1.46358633, -2.53469944)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(0.341249, 0.283087, 0.458700, 0.693847), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(0.012386, 0.637289, 0.712021, -0.421494), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-1.67824161, -3.67468786, -2.04183936, -2.84555030)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(0.514875, -0.455643, 0.876284, 0.285730), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(0.677064, 0.338902, 0.604616, 0.612818), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-2.93084764, -2.16161823, -1.428795, -4.45605373)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(-0.865207, -0.079617, -0.753249, -0.188573), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(-0.594055, 0.205390, -0.951743, 0.071686), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            add r4.yz, r8.zzwz, r4.yyzy
            mul r8.xyzw, cb0[86].yyyy, l(-1.51467049, -1.35937870, -0.454479277, -0.786625087)
            exp r8.xyzw, r8.xyzw
            add r11.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r8.xyzw, r0.wwww, r11.xyzw, r8.xyzw
            mad r11.xyzw, r6.zwzw, l(-0.205326, -0.616743, -0.048028, -0.608357), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.y, r3.w
            add r4.yz, r4.yyzy, r8.xxyx
            mad r11.xyzw, r6.zwzw, l(-0.265306, -0.051333, -0.095825, -0.409232), r3.xyxy
            min r11.xyzw, r10.xyzw, r11.xyzw
            max r11.xyzw, r9.xyzw, r11.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.xyxx, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r1.y, r7.y, r8.z, r1.y
            mov x12[0].x, r1.y
            add r4.yz, r8.zzwz, r4.yyzy
            mov x13[0].x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.y, r11.zwzz, t0.yxzw, s0, l(0.000000)
            add r7.z, -r7.y, l(1.000000)
            movc r7.y, r0.x, r7.z, r7.y
            add r7.y, r3.z, -r7.y
            lt r7.y, r1.z, r7.y
            movc r7.y, r7.y, l(0), l(1.000000)
            mad r3.w, r7.y, r8.w, r3.w
            mov x12[1].x, r3.w
            mov x13[1].x, r4.z
            div r1.y, r1.y, r4.y
            div r3.w, r3.w, r4.z
            add r1.y, r1.y, -r3.w
            ge r1.y, cb0[86].w, |r1.y|
            or r1.y, r7.x, r1.y
          else
            mov r1.y, l(-1)
          endif
          if_z r1.y
            mul r7.xyzw, cb0[86].yyyy, l(-0.454922915, -0.488759756, -3.00368571, -2.19938278)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.016320, 0.269958, -0.249026, 0.143399), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r1.y, r8.xyxx, t0.yxzw, s0, l(0.000000)
            add r3.w, -r1.y, l(1.000000)
            movc r1.y, r0.x, r3.w, r1.y
            add r1.y, -r1.y, r3.z
            lt r1.y, r1.z, r1.y
            movc r1.y, r1.y, l(0), l(1.000000)
            mov r3.w, x12[0].x
            mad r1.y, r1.y, r7.x, r3.w
            mov r3.w, x13[0].x
            add r3.w, r7.x, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r8.zwzz, t0.yxzw, s0, l(0.000000)
            add r4.z, -r4.y, l(1.000000)
            movc r4.y, r0.x, r4.z, r4.y
            add r4.y, r3.z, -r4.y
            lt r4.y, r1.z, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mov r4.z, x12[1].x
            mad r4.y, r4.y, r7.y, r4.z
            mov r4.z, x13[1].x
            add r4.z, r7.y, r4.z
            mad r8.xyzw, r6.zwzw, l(-0.077402, 0.871890, 0.320827, -0.713453), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-2.64347386, -0.213732481, -0.532696843, -0.526722968)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.176208, -0.821267, 0.137687, -0.001624), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            add r3.w, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.x, -r7.x, l(1.000000)
            movc r7.x, r0.x, r8.x, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.y, r4.y
            add r4.z, r4.z, r7.y
            mad r8.xyzw, r6.zwzw, l(0.300395, -0.071291, 0.273251, 0.137443), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-0.841880858, -2.84530139, -4.22661066, -3.85716414)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.438788, 0.053885, 0.126562, 0.851497), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            add r3.w, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.x, -r7.x, l(1.000000)
            movc r7.x, r0.x, r8.x, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.y, r4.y
            add r4.z, r4.z, r7.y
            mad r8.xyzw, r6.zwzw, l(0.421608, 0.847508, 0.893173, -0.262668), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-2.67585087, -2.05042386, -3.10861135, -1.78108454)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.837432, -0.101072, 0.734523, 0.189552), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            add r3.w, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.x, -r7.x, l(1.000000)
            movc r7.x, r0.x, r8.x, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.y, r4.y
            add r4.z, r4.z, r7.y
            mad r8.xyzw, r6.zwzw, l(0.880797, 0.075944, -0.708420, -0.029535), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-1.43741608, -2.969294, -0.427928865, -0.981529)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.555554, -0.298719, -0.045759, -0.871110), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            add r3.w, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.x, -r7.x, l(1.000000)
            movc r7.x, r0.x, r8.x, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.y, r4.y
            add r4.z, r4.z, r7.y
            mad r8.xyzw, r6.zwzw, l(-0.138755, -0.215934, -0.488585, 0.069882), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-0.183740988, -1.48677206, -1.46949327, -0.856197476)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.112210, 0.041340, 0.138922, -0.628008), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            add r3.w, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.x, -r7.x, l(1.000000)
            movc r7.x, r0.x, r8.x, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.y, r4.y
            add r4.z, r4.z, r7.y
            mad r8.xyzw, r6.zwzw, l(0.317340, -0.554506, 0.375213, -0.244039), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-1.73866272, -1.12745857, -1.98774683, -1.304964)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.256567, 0.651665, 0.135182, 0.525159), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            add r3.w, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.x, -r7.x, l(1.000000)
            movc r7.x, r0.x, r8.x, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.y, r4.y
            add r4.z, r4.z, r7.y
            mad r8.xyzw, r6.zwzw, l(0.701911, -0.258122, 0.549497, -0.228906), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            add r3.w, r7.z, r3.w
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r4.y, r7.x, r7.w, r4.y
            add r4.z, r7.w, r4.z
            mul r7.xyzw, cb0[86].yyyy, l(-1.35949278, -1.304402, -1.39065552, -1.56391883)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.605768, 0.074079, -0.582759, -0.120620), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r0.w, r8.xyxx, t0.yzwx, s0, l(0.000000)
            add r8.x, -r0.w, l(1.000000)
            movc r0.w, r0.x, r8.x, r0.w
            add r0.w, -r0.w, r3.z
            lt r0.w, r1.z, r0.w
            movc r0.w, r0.w, l(0), l(1.000000)
            mad r0.w, r0.w, r7.x, r1.y
            add r1.y, r3.w, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r8.zwzz, t0.yzwx, s0, l(0.000000)
            add r7.x, -r3.w, l(1.000000)
            movc r3.w, r0.x, r7.x, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.z, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r3.w, r3.w, r7.y, r4.y
            add r4.y, r4.z, r7.y
            mad r6.xyzw, r6.xyzw, l(0.351929, 0.508746, 0.653662, -0.103267), r3.xyxy
            min r6.xyzw, r10.xyzw, r6.xyzw
            max r6.xyzw, r9.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.z, r6.xyxx, t0.yzxw, s0, l(0.000000)
            add r6.x, -r4.z, l(1.000000)
            movc r4.z, r0.x, r6.x, r4.z
            add r4.z, r3.z, -r4.z
            lt r4.z, r1.z, r4.z
            movc r4.z, r4.z, l(0), l(1.000000)
            mad r0.w, r4.z, r7.z, r0.w
            mov x12[0].x, r0.w
            add r0.w, r7.z, r1.y
            mov x13[0].x, r0.w
            sample_l_indexable(texture2d)(float,float,float,float) r0.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r1.y, -r0.w, l(1.000000)
            movc r0.w, r0.x, r1.y, r0.w
            add r0.w, -r0.w, r3.z
            lt r0.w, r1.z, r0.w
            movc r0.w, r0.w, l(0), l(1.000000)
            mad r0.w, r0.w, r7.w, r3.w
            mov x12[1].x, r0.w
            add r0.w, r7.w, r4.y
            mov x13[1].x, r0.w
          endif
          mov r0.w, x12[0].x
          mov r1.y, x12[1].x
          add r0.w, r0.w, r1.y
          mov r1.y, x13[0].x
          mov r1.z, x13[1].x
          add r1.y, r1.z, r1.y
          div r1.x, r0.w, r1.y
        else
          ieq r0.w, r1.w, l(1)
          if_nz r0.w
            mul r6.xyzw, r5.zwzw, cb0[65].xyxy
            mul r7.xyzw, cb0[86].yyyy, l(-4.31136370, -3.52627683, -1.25792563, -1.55836809)
            exp r7.xyzw, r7.xyzw
            div r0.w, r0.y, cb0[86].z
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.554247, -0.771111, -0.739494, -0.535813), r3.xyxy
            mad r9.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].xyxy
            mad r10.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[69].zwzw
            add r10.xyzw, r10.xyzw, cb0[69].xyxy
            min r8.xyzw, r8.xyzw, r10.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r1.y, r8.xyxx, t0.yxzw, s0, l(0.000000)
            add r1.z, -r1.y, l(1.000000)
            movc r1.y, r0.x, r1.z, r1.y
            add r1.y, -r1.y, r3.z
            mul r1.z, r3.z, cb0[84].z
            lt r1.y, r1.z, r1.y
            movc r1.y, r1.y, l(0), l(1.000000)
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r8.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.z, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r8.xyzw, r6.zwzw, l(-0.581835, -0.004852, -0.617420, -0.234535), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r8.xyxx, t0.yxzw, s0, l(0.000000)
            add r4.z, -r4.y, l(1.000000)
            movc r4.y, r0.x, r4.z, r4.y
            add r4.y, r3.z, -r4.y
            lt r4.y, r1.z, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mul r4.y, r7.z, r4.y
            mad r1.y, r1.y, r7.x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r4.y, r8.zwzz, t0.yxzw, s0, l(0.000000)
            add r4.z, -r4.y, l(1.000000)
            movc r4.y, r0.x, r4.z, r4.y
            add r4.y, r3.z, -r4.y
            lt r4.y, r1.z, r4.y
            movc r4.y, r4.y, l(0), l(1.000000)
            mul r4.y, r7.w, r4.y
            mad r3.w, r3.w, r7.y, r4.y
            add r4.yz, r7.zzwz, r7.xxyx
            mul r7.xyzw, cb0[86].yyyy, l(-1.93653631, -2.47095561, -4.553454, -2.50024080)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.681692, 0.284707, -0.812983, 0.104160), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(-0.607105, 0.847591, -0.601184, 0.562426), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            add r4.yz, r7.zzwz, r4.yyzy
            mul r7.xyzw, cb0[86].yyyy, l(-4.74890566, -2.08656836, -0.674442112, -0.563664)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.023469, -0.962523, -0.123936, -0.754448), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(-0.004852, -0.373394, -0.183569, -0.266274), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            add r4.yz, r7.zzwz, r4.yyzy
            mul r7.xyzw, cb0[86].yyyy, l(-0.901273072, -0.228480220, -2.20538688, -5.671054)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(-0.061067, 0.460555, -0.085910, 0.118625), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(-0.221656, 0.751152, -0.275979, 0.981567), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            add r4.yz, r7.zzwz, r4.yyzy
            mul r7.xyzw, cb0[86].yyyy, l(-2.09949541, -4.05256033, -0.993613303, -1.25950646)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.404157, -0.651479, 0.320597, -0.883358), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(0.465560, -0.176183, 0.410443, -0.413068), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            add r4.yz, r7.zzwz, r4.yyzy
            mul r7.xyzw, cb0[86].yyyy, l(-0.814901173, -0.939830, -1.95053983, -3.42842364)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.413556, 0.123325, 0.353557, 0.322733), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(0.492660, 0.553880, 0.266579, 0.867061), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            add r4.yz, r7.zzwz, r4.yyzy
            mul r7.xyzw, cb0[86].yyyy, l(-2.98889518, -2.22883439, -6.24990940, -2.74358654)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.933348, -0.629810, 0.863582, -0.852290), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(0.920530, -0.355693, 0.849300, -0.048555), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            add r4.yz, r7.zzwz, r4.yyzy
            mul r7.xyzw, cb0[86].yyyy, l(-4.868580, -2.09602141, -3.33378029, -2.11065435)
            exp r7.xyzw, r7.xyzw
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
            mad r8.xyzw, r6.zwzw, l(0.952940, 0.156896, 0.691031, 0.330729), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r1.y, r8.x, r7.x, r1.y
            sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r8.y, -r8.x, l(1.000000)
            movc r8.x, r0.x, r8.y, r8.x
            add r8.x, r3.z, -r8.x
            lt r8.x, r1.z, r8.x
            movc r8.x, r8.x, l(0), l(1.000000)
            mad r3.w, r8.x, r7.y, r3.w
            add r4.yz, r4.yyzy, r7.xxyx
            mad r8.xyzw, r6.zwzw, l(0.898068, 0.633778, 0.890622, 0.850581), r3.xyxy
            min r8.xyzw, r10.xyzw, r8.xyzw
            max r8.xyzw, r9.xyzw, r8.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r1.y, r7.x, r7.z, r1.y
            mov x14[0].x, r1.y
            add r4.yz, r7.zzwz, r4.yyzy
            mov x15[0].x, r4.y
            sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
            add r7.y, -r7.x, l(1.000000)
            movc r7.x, r0.x, r7.y, r7.x
            add r7.x, r3.z, -r7.x
            lt r7.x, r1.z, r7.x
            movc r7.x, r7.x, l(0), l(1.000000)
            mad r3.w, r7.x, r7.w, r3.w
            mov x14[1].x, r3.w
            mov x15[1].x, r4.z
            div r7.x, r1.y, r4.y
            div r7.y, r3.w, r4.z
            add r7.x, -r7.y, r7.x
            lt r7.x, cb0[86].w, |r7.x|
            if_nz r7.x
              mul r7.xyzw, cb0[86].yyyy, l(-3.340066, -2.93286467, -3.71318436, -7.903147)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(-0.786126, -0.767632, -0.822138, -0.281655), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(-0.918943, -0.094150, -0.934812, 0.366741), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-1.96691215, -3.77197456, -2.417392, -3.47431779)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(-0.835200, 0.937803, -0.873226, 0.623890), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(-0.341594, -0.737541, -0.483383, -0.976928), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-1.07460284, -0.362947851, -0.695641100, -0.693262100)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(-0.204932, -0.483566, -0.214393, -0.059236), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(-0.230811, 0.305094, -0.367534, 0.102451), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-1.645441, -1.18442786, -1.92146969, -0.611149)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(-0.353130, 0.581530, 0.181860, -0.529649), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(0.087741, -0.730766, 0.188208, -0.289529), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-0.137389123, -0.362524211, -0.549391091, -1.371425)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(0.035981, -0.083407, 0.212928, 0.063509), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(0.145970, 0.281045, 0.236610, 0.566027), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-2.062181, -3.34212351, -4.833588, -2.24719357)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(0.021332, 0.760247, 0.637135, -0.637623), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(0.535875, -0.885556, 0.686331, -0.389935), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-1.733622, -1.39554238, -2.12258387, -5.77069855)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(0.677236, -0.174291, 0.615894, 0.070345), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r1.y, r8.x, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r8.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r8.y, -r8.x, l(1.000000)
              movc r8.x, r0.x, r8.y, r8.x
              add r8.x, r3.z, -r8.x
              lt r8.x, r1.z, r8.x
              movc r8.x, r8.x, l(0), l(1.000000)
              mad r3.w, r8.x, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r8.xyzw, r6.zwzw, l(0.715629, 0.999939, 0.676260, 0.711600), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.xyxx, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r1.y, r7.x, r7.z, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r7.x, r8.zwzz, t0.xyzw, s0, l(0.000000)
              add r7.y, -r7.x, l(1.000000)
              movc r7.x, r0.x, r7.y, r7.x
              add r7.x, r3.z, -r7.x
              lt r7.x, r1.z, r7.x
              movc r7.x, r7.x, l(0), l(1.000000)
              mad r3.w, r7.x, r7.w, r3.w
              add r4.yz, r7.zzwz, r4.yyzy
              mul r7.xyzw, cb0[86].yyyy, l(-0.851650417, -1.39399922, -1.217193, -6.313437)
              exp r7.xyzw, r7.xyzw
              add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
              mad r7.xyzw, r0.wwww, r8.xyzw, r7.xyzw
              mad r8.xyzw, r6.zwzw, l(-0.409772, -0.175695, -0.476669, -0.395672), r3.xyxy
              min r8.xyzw, r10.xyzw, r8.xyzw
              max r8.xyzw, r9.xyzw, r8.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r0.w, r8.xyxx, t0.yzwx, s0, l(0.000000)
              add r8.x, -r0.w, l(1.000000)
              movc r0.w, r0.x, r8.x, r0.w
              add r0.w, -r0.w, r3.z
              lt r0.w, r1.z, r0.w
              movc r0.w, r0.w, l(0), l(1.000000)
              mad r0.w, r0.w, r7.x, r1.y
              sample_l_indexable(texture2d)(float,float,float,float) r1.y, r8.zwzz, t0.yxzw, s0, l(0.000000)
              add r8.x, -r1.y, l(1.000000)
              movc r1.y, r0.x, r8.x, r1.y
              add r1.y, -r1.y, r3.z
              lt r1.y, r1.z, r1.y
              movc r1.y, r1.y, l(0), l(1.000000)
              mad r1.y, r1.y, r7.y, r3.w
              add r4.yz, r4.yyzy, r7.xxyx
              mad r6.xyzw, r6.xyzw, l(-0.439802, 0.362407, 0.506333, 0.876888), r3.xyxy
              min r6.xyzw, r10.xyzw, r6.xyzw
              max r6.xyzw, r9.xyzw, r6.xyzw
              sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
              add r6.x, -r3.w, l(1.000000)
              movc r3.w, r0.x, r6.x, r3.w
              add r3.w, -r3.w, r3.z
              lt r3.w, r1.z, r3.w
              movc r3.w, r3.w, l(0), l(1.000000)
              mad r0.w, r3.w, r7.z, r0.w
              mov x14[0].x, r0.w
              add r4.yz, r7.zzwz, r4.yyzy
              mov x15[0].x, r4.y
              sample_l_indexable(texture2d)(float,float,float,float) r0.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
              add r3.w, -r0.w, l(1.000000)
              movc r0.w, r0.x, r3.w, r0.w
              add r0.w, -r0.w, r3.z
              lt r0.w, r1.z, r0.w
              movc r0.w, r0.w, l(0), l(1.000000)
              mad r0.w, r0.w, r7.w, r1.y
              mov x14[1].x, r0.w
              mov x15[1].x, r4.z
            endif
            mov r0.w, x14[0].x
            mov r1.y, x14[1].x
            add r0.w, r0.w, r1.y
            mov r1.y, x15[0].x
            mov r1.z, x15[1].x
            add r1.y, r1.z, r1.y
            div r1.x, r0.w, r1.y
          else
            mul r6.xyzw, r5.zwzw, l(-0.792474, -0.779962, -0.580859, -0.208777)
            mul r7.xyzw, cb0[86].yyyy, l(-3.15952015, -1.38548744, -6.94438553, -1.06862068)
            exp r7.xyzw, r7.xyzw
            div r0.y, r0.y, cb0[86].z
            add r8.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r8.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            mad r8.xyzw, cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r1.w + 68].xyxy
            mad r9.xyzw, -cb0[8].zwzw, l(2.000000, 2.000000, 2.000000, 2.000000), cb0[r1.w + 68].zwzw
            add r9.xyzw, r9.xyzw, cb0[r1.w + 68].xyxy
            min r6.xyzw, r6.xyzw, r9.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r0.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r1.y, -r0.w, l(1.000000)
            movc r0.w, r0.x, r1.y, r0.w
            add r0.w, -r0.w, r3.z
            mul r1.y, r3.z, cb0[84].z
            lt r0.w, r1.y, r0.w
            movc r0.w, r0.w, l(0), l(1.000000)
            sample_l_indexable(texture2d)(float,float,float,float) r1.z, r6.zwzz, t0.yzxw, s0, l(0.000000)
            add r3.w, -r1.z, l(1.000000)
            movc r1.z, r0.x, r3.w, r1.z
            add r1.z, -r1.z, r3.z
            lt r1.z, r1.y, r1.z
            movc r1.z, r1.z, l(0), l(1.000000)
            mul r1.z, r7.y, r1.z
            mad r0.w, r0.w, r7.x, r1.z
            add r1.z, r7.y, r7.x
            mul r6.xyzw, r5.zwzw, l(-0.920347, -0.411420, -0.515427, 0.089999)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.614856, 0.386578, -0.537950, 0.716666)
            mul r7.xyzw, cb0[86].yyyy, l(-1.86925554, -3.26677227, -2.21088624, -3.31532168)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.x, r0.w
            add r1.z, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.y, r0.w
            add r1.z, r7.y, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.811945, 0.905210, -0.139439, -0.888668)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.454634, -0.707938, -0.146336, -0.259194)
            mul r7.xyzw, cb0[86].yyyy, l(-2.65607238, -0.509738743, -0.396726757, -1.48935831)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.x, r0.w
            add r1.z, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.y, r0.w
            add r1.z, r7.y, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.211219, 0.114841, -0.261147, 0.588488)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.420942, 0.991272, 0.359172, -0.633717)
            mul r7.xyzw, cb0[86].yyyy, l(-3.700013, -1.88057292, -6.43597031, -1.007971)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.x, r0.w
            add r1.z, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.y, r0.w
            add r1.z, r7.y, r1.z
            mul r6.xyzw, r5.zwzw, l(0.169469, -0.997253, 0.435713, -0.250832)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(0.320597, 0.291055, 0.125584, 0.046907)
            mul r7.xyzw, cb0[86].yyyy, l(-0.818598330, -0.207658067, -1.42133641, -1.874704)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.x, r0.w
            add r1.z, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.y, r0.w
            add r1.z, r7.y, r1.z
            mul r6.xyzw, r5.zwzw, l(0.038057, 0.625477, 0.872005, -0.927000)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(0.743156, -0.505173, 0.736442, -0.189734)
            mul r7.xyzw, cb0[86].yyyy, l(-3.30185962, -2.06184530, -3.57361269, -1.25295591)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.x, r0.w
            add r1.z, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.y, r0.w
            add r1.z, r7.y, r1.z
            mul r6.xyzw, r5.zwzw, l(0.843562, 0.357036, 0.568590, 0.116550)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(0.865413, 0.763726, 0.545763, 0.730216)
            mul r7.xyzw, cb0[86].yyyy, l(-2.69696546, -3.500330, -5.50587749, -3.47976851)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.x, r0.w
            add r1.z, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.y, r0.w
            add r1.z, r7.y, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.975402, -0.071139, -0.883908, 0.217872)
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.xyxx, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.z, r0.w
            add r1.z, r7.z, r1.z
            sample_l_indexable(texture2d)(float,float,float,float) r3.w, r6.zwzz, t0.yzwx, s0, l(0.000000)
            add r4.y, -r3.w, l(1.000000)
            movc r3.w, r0.x, r4.y, r3.w
            add r3.w, -r3.w, r3.z
            lt r3.w, r1.y, r3.w
            movc r3.w, r3.w, l(0), l(1.000000)
            mad r0.w, r3.w, r7.w, r0.w
            add r1.z, r7.w, r1.z
            mul r6.xyzw, r5.zwzw, l(-0.884518, 0.568041, 0.062593, -0.508530)
            mul r7.xyzw, cb0[86].yyyy, l(-4.287428, -1.03613436, -0.570473433, -4.38599825)
            exp r7.xyzw, r7.xyzw
            add r10.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
            mad r7.xyzw, r0.yyyy, r10.xyzw, r7.xyzw
            mad r6.xyzw, r6.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r6.xyzw, r9.xyzw, r6.xyzw
            max r6.xyzw, r8.xyzw, r6.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r0.y, r6.xyxx, t0.yxzw, s0, l(0.000000)
            add r3.w, -r0.y, l(1.000000)
            movc r0.y, r0.x, r3.w, r0.y
            add r0.y, -r0.y, r3.z
            lt r0.y, r1.y, r0.y
            movc r0.y, r0.y, l(0), l(1.000000)
            mad r0.y, r0.y, r7.x, r0.w
            add r0.w, r1.z, r7.x
            sample_l_indexable(texture2d)(float,float,float,float) r1.z, r6.zwzz, t0.yzxw, s0, l(0.000000)
            add r3.w, -r1.z, l(1.000000)
            movc r1.z, r0.x, r3.w, r1.z
            add r1.z, -r1.z, r3.z
            lt r1.z, r1.y, r1.z
            movc r1.z, r1.z, l(0), l(1.000000)
            mad r0.y, r1.z, r7.y, r0.y
            add r0.w, r7.y, r0.w
            mul r5.xyzw, r5.xyzw, l(0.011689, 0.326395, 0.507797, -0.916562)
            mad r5.xyzw, r5.xyzw, cb0[r1.w + 64].xyxy, r3.xyxy
            min r5.xyzw, r9.xyzw, r5.xyzw
            max r5.xyzw, r8.xyzw, r5.xyzw
            sample_l_indexable(texture2d)(float,float,float,float) r1.z, r5.xyxx, t0.yzxw, s0, l(0.000000)
            add r1.w, -r1.z, l(1.000000)
            movc r1.z, r0.x, r1.w, r1.z
            add r1.z, -r1.z, r3.z
            lt r1.z, r1.y, r1.z
            movc r1.z, r1.z, l(0), l(1.000000)
            mad r0.y, r1.z, r7.z, r0.y
            add r0.w, r7.z, r0.w
            sample_l_indexable(texture2d)(float,float,float,float) r1.z, r5.zwzz, t0.yzxw, s0, l(0.000000)
            add r1.w, -r1.z, l(1.000000)
            movc r0.x, r0.x, r1.w, r1.z
            add r0.x, -r0.x, r3.z
            lt r0.x, r1.y, r0.x
            movc r0.x, r0.x, l(0), l(1.000000)
            mad r0.x, r0.x, r7.w, r0.y
            add r0.y, r7.w, r0.w
            div r1.x, r0.x, r0.y
          endif
        endif
      endif
      add r0.x, -r4.w, r1.x
      mad r0.x, r4.x, r0.x, r4.w
      eq r0.y, cb0[10].w, l(1.000000)
      if_nz r0.y
        dp4 r1.x, r2.xyzw, cb0[31].xyzw
        dp4 r1.y, r2.xyzw, cb0[32].xyzw
        dp4 r1.z, r2.xyzw, cb0[33].xyzw
        dp4 r0.y, r2.xyzw, cb0[34].xyzw
        div r1.xyz, r1.xyzx, r0.yyyy
        add r1.xyz, -r1.xyzx, cb0[9].xyzx
        mul r1.xyz, r1.xyzx, cb0[9].wwww
        dp3 r0.y, r1.xyzx, r1.xyzx
        sqrt r0.y, r0.y
        mad r0.y, r0.y, cb0[10].x, cb0[10].y
        max r0.y, r0.y, l(0.000000)
        mad r0.y, -r0.y, r0.y, l(1.000000)
        max r0.y, r0.y, l(0.000000)
        log r0.y, r0.y
        mul r0.y, r0.y, cb0[10].z
        exp r0.y, r0.y
        add r0.w, r0.x, l(-1.000000)
        mad r0.x, r0.y, r0.w, l(1.000000)
      endif
      add r0.y, -r0.x, l(1.000000)
      mad r0.z, cb0[85].y, r0.y, r0.x
    endif
  endif
else
  mov r0.z, l(1.000000)
endif
mov o0.xyz, r0.zzzz
mov o0.w, l(1.000000)
ret
// Approximately 0 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with 3Dmigoto v0.6.181 on Sat Dec 23 18:45:04 2023
// Texture2D<float4> t5 : register(t5);
//
// Texture2D<float4> t3 : register(t3);
//
// Texture2D<float4> t2 : register(t2);
//
// Texture2D<float4> t1 : register(t1);
//
// Texture2D<float4> t0 : register(t0);
//
// SamplerState s2_s : register(s2);
//
// SamplerState s0_s : register(s0);
//
// cbuffer cb0 : register(b0)
// {
//   float4 cb0[88];
// }
//
//
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Texture2D<float4> StereoParams : register(t125);
//
//
// void main(
//   float4 v0 : SV_Position0,
//   float4 v1 : TEXCOORD0,
//   float2 v2 : TEXCOORD1,
//   out float4 o0 : SV_TARGET0)
// {
//   float4 r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
//   float4 x0[2];
//   float4 x1[2];
//   float4 x2[2];
//   float4 x3[2];
//   float4 x4[2];
//   float4 x5[2];
//   float4 x6[2];
//   float4 x7[2];
//   float4 x8[2];
//   float4 x9[2];
//   float4 x10[2];
//   float4 x11[2];
//   float4 x12[2];
//   float4 x13[2];
//   float4 x14[2];
//   float4 x15[2];
//   r0.xy = cb0[7].zw * v0.xy;
//   r0.zw = t5.Sample(s0_s, float2(0.0625,0.5)).xy;
//   r1.x = cmp(v1.w != 1.000000);
//   r1.y = v1.w + -r0.w;
//   r1.y = r0.z * r1.y + v1.x;
//   r1.y = r1.x ? r1.y : v1.x;
//   r1.z = v1.y;
//   r1.xy = r1.yz / v1.ww;
//   r1.zw = r1.xy * float2(0.5,-0.5) + float2(0.5,0.5);
//   r2.x = cmp(cb0[39].x == 1.000000);
//   r0.xy = r2.xx ? r1.zw : r0.xy;
//   r1.zw = cb0[7].xy * cb0[5].zw;
//   r0.xy = r1.zw * r0.xy;
//   r1.z = cmp(cb0[6].x == 1.000000);
//   if (r1.z != 0) {
//     r1.z = t1.SampleLevel(s0_s, r0.xy, 0).x;
//   } else {
//     r2.x = cmp(cb0[6].y == 1.000000);
//     if (r2.x != 0) {
//       r1.z = t1.SampleLevel(s0_s, r0.xy, 0).y;
//     } else {
//       r2.x = cmp(cb0[6].z == 1.000000);
//       if (r2.x != 0) {
//         r1.z = t1.SampleLevel(s0_s, r0.xy, 0).z;
//       } else {
//         r1.z = t1.SampleLevel(s0_s, r0.xy, 0).w;
//       }
//     }
//   }
//   r1.w = 1;
//   r0.x = dot(r1.zw, cb0[29].zw);
//   r0.y = dot(r1.zw, cb0[30].zw);
//   r2.z = r0.x / r0.y;
//   r1.yz = abs(r2.zz) * r1.xy;
//   r0.x = cmp(abs(r2.z) != 1.000000);
//   r0.y = abs(r2.z) + -r0.w;
//   r0.y = -r0.z * r0.y + r1.y;
//   r1.x = r0.x ? r0.y : r1.y;
//   r1.w = 1;
//   r2.x = dot(r1.xzw, cb0[27].xyw);
//   r2.y = dot(r1.xzw, cb0[28].xyw);
//   r0.x = cmp(cb0[84].w == 1.000000);
//   r0.y = 0.5 + -cb0[87].x;
//   r0.z = cb0[87].y * r0.y;
//   r0.y = -r0.y * cb0[87].y + r0.y;
//   r2.w = 1;
//   r3.xyz = float3(0,0,0);
//   r0.w = -1;
//   r1.xyzw = float4(0,0,0,-nan);
//   r4.xy = float2(0,0);
//   while (true) {
//     r4.z = (int)r4.y;
//     r4.z = cmp(r4.z >= cb0[39].x);
//     if (r4.z != 0) break;
//     r4.z = (uint)r4.y << 2;
//     r5.x = dot(r2.xyzw, cb0[r4.z+40].xyzw);
//     r5.y = dot(r2.xyzw, cb0[r4.z+41].xyzw);
//     r5.z = dot(r2.xyzw, cb0[r4.z+42].xyzw);
//     r4.z = dot(r2.xyzw, cb0[r4.z+43].xyzw);
//     r5.xyz = r5.xyz / r4.zzz;
//     r4.z = cb0[r4.y+76].x + r5.z;
//     r4.z = min(1, r4.z);
//     r4.w = 1 + -r4.z;
//     r5.w = r0.x ? r4.w : r4.z;
//     r4.zw = cb0[r4.y+68].xy + cb0[r4.y+68].zw;
//     r6.xy = cmp(cb0[r4.y+68].xy < r5.xy);
//     r4.zw = cmp(r5.xy < r4.zw);
//     r4.z = r4.z ? r6.x : 0;
//     r4.z = r6.y ? r4.z : 0;
//     r4.z = r4.w ? r4.z : 0;
//     if (r4.z != 0) {
//       r4.zw = -cb0[r4.y+68].xy + r5.xy;
//       r4.zw = r4.zw / cb0[r4.y+68].zw;
//       r4.zw = float2(-0.5,-0.5) + r4.zw;
//       r6.xy = cmp(r0.yy < abs(r4.zw));
//       r5.z = (int)r6.y | (int)r6.x;
//       if (r5.z != 0) {
//         r5.z = (int)r4.y + 1;
//         r5.z = (int)r5.z;
//         r5.z = cmp(r5.z < cb0[39].x);
//         r1.w = (int)r4.y + (int)-r5.z;
//         r5.z = (uint)r1.w << 2;
//         r6.x = dot(r2.xyzw, cb0[r5.z+40].xyzw);
//         r6.y = dot(r2.xyzw, cb0[r5.z+41].xyzw);
//         r6.z = dot(r2.xyzw, cb0[r5.z+42].xyzw);
//         r5.z = dot(r2.xyzw, cb0[r5.z+43].xyzw);
//         r3.xyw = r6.xyz / r5.zzz;
//         r3.w = cb0[r1.w+76].x + r3.w;
//         r3.w = min(1, r3.w);
//         r5.z = 1 + -r3.w;
//         r3.z = r0.x ? r5.z : r3.w;
//         r6.xy = cb0[r1.w+68].xy + cb0[r1.w+68].zw;
//         r6.zw = -cb0[r1.w+68].xy + r3.xy;
//         r6.zw = r6.zw / cb0[r1.w+68].zw;
//         r6.zw = float2(-0.5,-0.5) + r6.zw;
//         r7.xy = cmp(cb0[r1.w+68].xy < r3.xy);
//         r6.xy = cmp(r3.xy < r6.xy);
//         r3.w = r6.x ? r7.x : 0;
//         r3.w = r7.y ? r3.w : 0;
//         r3.w = r6.y ? r3.w : 0;
//         r6.xy = cmp(r0.yy < abs(r6.zw));
//         r5.z = (int)r6.y | (int)r6.x;
//         r5.z = ~(int)r5.z;
//         r3.w = (int)r3.w & (int)r5.z;
//         if (r3.w != 0) {
//           r3.w = cmp((int)r4.y != (int)r1.w);
//           if (r3.w != 0) {
//             r4.zw = abs(r4.zw) + -r0.yy;
//             r4.zw = r4.zw / r0.zz;
//             r4.x = saturate(max(r4.w, r4.z));
//           }
//         }
//       }
//       r1.xyz = r5.xyw;
//       r0.w = r4.y;
//       break;
//     }
//     r4.y = (int)r4.y + 1;
//     r1.xyz = r5.xyw;
//     r3.xyz = float3(0,0,0);
//     r0.w = -1;
//     r1.w = -1;
//     r4.x = 0;
//   }
//   r0.yz = float2(0.25,0.25) * v0.xy;
//   r5.xyzw = t3.Sample(s2_s, r0.yz).xyzw;
//   r0.y = cmp((int)r0.w != -1);
//   if (r0.y != 0) {
//     r2.w = 1;
//     r0.y = dot(r2.xyzw, cb0[37].xyzw);
//     r0.y = r0.x ? -r0.y : r0.y;
//     r0.z = cmp(r4.x == 0.000000);
//     if (r0.z != 0) {
//       r0.z = cb0[r0.w+80].x + r0.y;
//       r3.w = cb0[r0.w+80].y * r0.z;
//       r4.y = cmp(cb0[85].x == 1.000000);
//       if (r4.y != 0) {
//         r0.z = r0.z * cb0[r0.w+80].y + -cb0[r0.w+60].x;
//         r0.z = r0.z / r3.w;
//         r4.zw = cb0[r0.w+60].zw * r0.zz;
//       } else {
//         r4.zw = cb0[r0.w+60].zw;
//       }
//       r6.xyzw = cb0[87].zzzz * r4.zwzw;
//       r6.xyzw = -r6.xyzw * r5.xyxy + r4.zwzw;
//       r4.zw = -cb0[8].zw + r1.xy;
//       r7.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].xyxy;
//       r8.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].zwzw;
//       r8.xyzw = cb0[r0.w+68].xyxy + r8.xyzw;
//       r4.zw = min(r8.xy, r4.zw);
//       r4.zw = max(r4.zw, r7.xy);
//       r0.z = t2.SampleLevel(s0_s, r4.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.x = abs(r4.w) * abs(r4.w);
//       r9.x = r9.x * r9.x;
//       r9.z = r9.x * abs(r4.w);
//       r9.y = r9.z * r0.z;
//       r9.x = 1;
//       r9.xyz = r4.zzz ? r9.xyz : 0;
//       r10.xyzw = cb0[8].zwzw * float4(-1,0,-1,1) + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.w = 1 + -r0.z;
//       r0.z = r0.x ? r4.w : r0.z;
//       r4.w = cmp(r0.z < r1.z);
//       r9.w = r1.z + -r0.z;
//       r9.w = r9.w / r1.z;
//       r9.w = 2 + -r9.w;
//       r10.x = abs(r9.w) * abs(r9.w);
//       r10.x = r10.x * r10.x;
//       r10.y = r10.x * abs(r9.w);
//       r11.y = r0.z * r10.y + r9.y;
//       r11.z = abs(r9.w) * r10.x + r9.z;
//       r11.x = r4.z ? 2 : 1;
//       r9.xyz = r4.www ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = cb0[8].zwzw * float4(0,-1,0,1) + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r4.zw = min(r8.zw, r1.xy);
//       r4.zw = max(r4.zw, r7.xy);
//       r0.z = t2.SampleLevel(s0_s, r4.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = cb0[8].zwzw * float4(1,-1,1,0) + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r4.zw = cb0[8].zw + r1.xy;
//       r4.zw = min(r4.zw, r8.xy);
//       r4.zw = max(r4.zw, r7.xy);
//       r0.z = t2.SampleLevel(s0_s, r4.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r10.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//       r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r10.xyzw = min(r10.xyzw, r8.xyzw);
//       r10.xyzw = max(r10.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r10.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r11.y = r0.z * r10.x + r9.y;
//       r11.z = abs(r4.w) * r9.w + r9.z;
//       r11.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r11.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r10.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r9.w = abs(r4.w) * abs(r4.w);
//       r9.w = r9.w * r9.w;
//       r10.x = r9.w * abs(r4.w);
//       r10.y = r0.z * r10.x + r9.y;
//       r10.z = abs(r4.w) * r9.w + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//       r6.xyzw = r6.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//       r6.xyzw = min(r6.xyzw, r8.xyzw);
//       r6.xyzw = max(r6.xyzw, r7.xyzw);
//       r0.z = t2.SampleLevel(s0_s, r6.xy, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r6.x = abs(r4.w) * abs(r4.w);
//       r6.x = r6.x * r6.x;
//       r6.y = r6.x * abs(r4.w);
//       r10.y = r0.z * r6.y + r9.y;
//       r10.z = abs(r4.w) * r6.x + r9.z;
//       r10.x = 1 + r9.x;
//       r9.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r0.z = t2.SampleLevel(s0_s, r6.zw, 0).x;
//       r4.z = 1 + -r0.z;
//       r0.z = r0.x ? r4.z : r0.z;
//       r4.z = cmp(r0.z < r1.z);
//       r4.w = r1.z + -r0.z;
//       r4.w = r4.w / r1.z;
//       r4.w = 2 + -r4.w;
//       r6.x = abs(r4.w) * abs(r4.w);
//       r6.x = r6.x * r6.x;
//       r6.y = r6.x * abs(r4.w);
//       r10.y = r0.z * r6.y + r9.y;
//       r10.z = abs(r4.w) * r6.x + r9.z;
//       r10.x = 1 + r9.x;
//       r6.xyz = r4.zzz ? r10.xyz : r9.xyz;
//       r9.z = r6.y / r6.z;
//       r0.z = cmp(r6.x == 0.000000);
//       if (r0.z != 0) {
//         r4.z = 1;
//       }
//       if (r0.z == 0) {
//         r0.z = (uint)r0.w << 2;
//         r9.xy = r1.xy * float2(2,-2) + float2(-1,1);
//         r9.w = 1;
//         r4.w = dot(r9.xyzw, cb0[r0.z+13].xyzw);
//         r0.z = dot(r9.xyzw, cb0[r0.z+14].xyzw);
//         r0.z = r4.w / r0.z;
//         r0.z = cb0[r0.w+80].x + r0.z;
//         r6.xy = cb0[r0.w+60].zw * cb0[86].xx;
//         r0.z = -r0.z * cb0[r0.w+80].y + r3.w;
//         r0.z = min(cb0[85].w, r0.z);
//         r0.z = r0.z / cb0[85].z;
//         r6.zw = -cb0[r0.w+60].zw * cb0[86].xx + cb0[r0.w+60].zw;
//         r6.xy = r0.zz * r6.zw + r6.xy;
//         if (r4.y != 0) {
//           r3.w = cb0[r0.w+60].x / r3.w;
//           r6.xy = r6.xy * r3.ww;
//         }
//         r9.xyzw = cb0[87].wwww * r6.xyxy;
//         r6.xyzw = -r9.xyzw * r5.zwzw + r6.xyxy;
//         if (r0.w == 0) {
//           r9.xyzw = cb0[r0.w+64].xyxy * r6.zwzw;
//           r10.xyzw = float4(-7.19990158,-8.57973289,-2.58234143,-6.14066792) * cb0[86].yyyy;
//           r10.xyzw = exp2(r10.xyzw);
//           r3.w = r0.z / cb0[86].z;
//           r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//           r10.xyzw = r3.wwww * r11.xyzw + r10.xyzw;
//           r11.xyzw = r9.zwzw * float4(-0.520550013,-0.845854998,-0.751770973,-0.65545398) + r1.xyxy;
//           r12.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].xyxy;
//           r13.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].zwzw;
//           r13.xyzw = cb0[r0.w+68].xyxy + r13.xyzw;
//           r11.xyzw = min(r13.xyzw, r11.xyzw);
//           r11.xyzw = max(r11.xyzw, r12.xyzw);
//           r4.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//           r4.w = 1 + -r4.y;
//           r4.y = r0.x ? r4.w : r4.y;
//           r4.y = -r4.y + r1.z;
//           r4.w = cb0[84].z * r1.z;
//           r4.y = cmp(r4.w < r4.y);
//           r4.y = r4.y ? 0 : 1;
//           r11.x = t0.SampleLevel(s0_s, r11.zw, 0).x;
//           r11.y = 1 + -r11.x;
//           r11.x = r0.x ? r11.y : r11.x;
//           r11.x = -r11.x + r1.z;
//           r11.x = cmp(r4.w < r11.x);
//           r11.x = r11.x ? 0 : 1;
//           r14.xyzw = r9.zwzw * float4(-0.678021014,-0.483969986,-0.854924977,-0.490873992) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r11.y = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.z = 1 + -r11.y;
//           r11.y = r0.x ? r11.z : r11.y;
//           r11.y = -r11.y + r1.z;
//           r11.y = cmp(r4.w < r11.y);
//           r11.y = r11.y ? 0 : 1;
//           r11.y = r11.y * r10.z;
//           r4.y = r4.y * r10.x + r11.y;
//           r11.y = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.z = 1 + -r11.y;
//           r11.y = r0.x ? r11.z : r11.y;
//           r11.y = -r11.y + r1.z;
//           r11.y = cmp(r4.w < r11.y);
//           r11.y = r11.y ? 0 : 1;
//           r11.y = r11.y * r10.w;
//           r11.x = r11.x * r10.y + r11.y;
//           r10.xy = r10.xy + r10.zw;
//           r14.xyzw = float4(-2.31478643,-2.89526725,-3.05039549,-3.99175406) * cb0[86].yyyy;
//           r14.xyzw = exp2(r14.xyzw);
//           r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//           r14.xyzw = r3.wwww * r15.xyzw + r14.xyzw;
//           r15.xyzw = r9.zwzw * float4(-0.792430997,0.102303997,-0.761083007,0.412304997) + r1.xyxy;
//           r15.xyzw = min(r15.xyzw, r13.xyzw);
//           r15.xyzw = max(r15.xyzw, r12.xyzw);
//           r10.z = t0.SampleLevel(s0_s, r15.xy, 0).x;
//           r10.w = 1 + -r10.z;
//           r10.z = r0.x ? r10.w : r10.z;
//           r10.z = -r10.z + r1.z;
//           r10.z = cmp(r4.w < r10.z);
//           r10.z = r10.z ? 0 : 1;
//           r4.y = r10.z * r14.x + r4.y;
//           r10.z = t0.SampleLevel(s0_s, r15.zw, 0).x;
//           r10.w = 1 + -r10.z;
//           r10.z = r0.x ? r10.w : r10.z;
//           r10.z = -r10.z + r1.z;
//           r10.z = cmp(r4.w < r10.z);
//           r10.z = r10.z ? 0 : 1;
//           r10.z = r10.z * r14.y + r11.x;
//           r10.xy = r14.xy + r10.xy;
//           r11.xyzw = r9.zwzw * float4(-0.516156971,0.711853027,-0.700168014,0.622896016) + r1.xyxy;
//           r11.xyzw = min(r11.xyzw, r13.xyzw);
//           r11.xyzw = max(r11.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r11.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r14.z + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r11.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r14.w + r10.z;
//           r10.xy = r10.xy + r14.zw;
//           r11.xyzw = float4(-1.64231598,-3.31069326,-1.56545961,-0.724846363) * cb0[86].yyyy;
//           r11.xyzw = exp2(r11.xyzw);
//           r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//           r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//           r14.xyzw = r9.zwzw * float4(-0.355834007,-0.579065979,-0.233941004,-0.868254006) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.x + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.y + r10.z;
//           r10.xy = r11.xy + r10.xy;
//           r14.xyzw = r9.zwzw * float4(-0.490482002,-0.444795996,-0.319092005,-0.232715994) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.z + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.w + r10.z;
//           r10.xy = r10.xy + r11.zw;
//           r11.xyzw = float4(-1.00778794,-1.02969921,-1.71244168,-6.18136501) * cb0[86].yyyy;
//           r11.xyzw = exp2(r11.xyzw);
//           r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//           r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//           r14.xyzw = r9.zwzw * float4(-0.27345401,0.421808004,-0.400938004,0.315499991) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.x + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.y + r10.z;
//           r10.xy = r11.xy + r10.xy;
//           r14.xyzw = r9.zwzw * float4(-0.27500701,0.638119996,-0.458970994,0.872913003) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.z + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.w + r10.z;
//           r10.xy = r10.xy + r11.zw;
//           r11.xyzw = float4(-5.08163738,-5.33022404,-0.879165471,-0.595332325) * cb0[86].yyyy;
//           r11.xyzw = exp2(r11.xyzw);
//           r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//           r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//           r14.xyzw = r9.zwzw * float4(0.0997809991,-0.965326011,0.334973991,-0.915804029) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.x + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.y + r10.z;
//           r10.xy = r11.xy + r10.xy;
//           r14.xyzw = r9.zwzw * float4(0.0777480006,-0.449645996,0.156904995,-0.299495995) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.z + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.w + r10.z;
//           r10.xy = r10.xy + r11.zw;
//           r11.xyzw = float4(-0.82670176,-0.270535439,-6.51378965,-6.9205637) * cb0[86].yyyy;
//           r11.xyzw = exp2(r11.xyzw);
//           r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//           r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//           r14.xyzw = r9.zwzw * float4(0.211989,0.381204009,0.0867429972,0.147351995) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.x + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.y + r10.z;
//           r10.xy = r11.xy + r10.xy;
//           r14.xyzw = r9.zwzw * float4(0.0479819998,0.987891972,0.26492399,0.955706) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.z + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.w + r10.z;
//           r10.xy = r10.xy + r11.zw;
//           r11.xyzw = float4(-6.2543025,-6.55701685,-8.89246655,-1.43309534) * cb0[86].yyyy;
//           r11.xyzw = exp2(r11.xyzw);
//           r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//           r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//           r14.xyzw = r9.zwzw * float4(0.736899972,-0.656467974,0.891682982,-0.42868799) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.x + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.y + r10.z;
//           r10.xy = r11.xy + r10.xy;
//           r14.xyzw = r9.zwzw * float4(0.996095002,-0.0599219985,0.508179009,0.371794999) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.z + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.w + r10.z;
//           r10.xy = r10.xy + r11.zw;
//           r11.xyzw = float4(-3.67072701,-7.83593607,-7.05661964,-5.62808418) * cb0[86].yyyy;
//           r11.xyzw = exp2(r11.xyzw);
//           r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//           r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//           r14.xyzw = r9.zwzw * float4(0.799534023,0.458108991,0.757354975,0.646281004) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.x + r4.y;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r14.x = 1 + -r10.w;
//           r10.w = r0.x ? r14.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.y + r10.z;
//           r10.xy = r11.xy + r10.xy;
//           r14.xyzw = r9.zwzw * float4(0.618847013,0.775925994,-0.945554972,-0.256700009) + r1.xyxy;
//           r14.xyzw = min(r14.xyzw, r13.xyzw);
//           r14.xyzw = max(r14.xyzw, r12.xyzw);
//           r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r4.y = r10.w * r11.z + r4.y;
//           x0[0].x = r4.y;
//           r10.xy = r10.xy + r11.zw;
//           x1[0].x = r10.x;
//           r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//           r11.x = 1 + -r10.w;
//           r10.w = r0.x ? r11.x : r10.w;
//           r10.w = -r10.w + r1.z;
//           r10.w = cmp(r4.w < r10.w);
//           r10.w = r10.w ? 0 : 1;
//           r10.z = r10.w * r11.w + r10.z;
//           x0[1].x = r10.z;
//           x1[1].x = r10.y;
//           r10.w = r4.y / r10.x;
//           r11.x = r10.z / r10.y;
//           r10.w = -r11.x + r10.w;
//           r10.w = cmp(cb0[86].w >= abs(r10.w));
//           if (r10.w == 0) {
//             r11.xyzw = float4(-2.85802603,-1.79378712,-2.96656418,-2.51360893) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.787473977,-0.350791991,-0.570385993,0.425458014) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.834991992,0.251581013,-0.497132003,-0.658249021) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-2.37573552,-1.10526347,-0.803203702,-0.611408174) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.324059993,-0.739427984,-0.322221011,-0.42730999) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.413078994,-0.107845001,-0.175731003,0.297403991) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-0.954242408,-2.72319531,-1.61956906,-3.85246587) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.0721649975,0.478475988,-0.261705011,0.807196975) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.401924998,0.541754007,0.457625985,-0.810500979) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-2.32574606,-0.932220578,-0.230742186,-1.12492311) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.48141101,-0.639600992,0.29273501,-0.375277996) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.00913599972,-0.147521004,0.498174995,0.212167993) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-0.845245004,-2.5714314,-1.46358633,-2.53469944) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.341248989,0.283086985,0.458700001,0.693847001) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.0123859998,0.637288988,0.712020993,-0.421494007) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-1.67824161,-3.67468786,-2.04183936,-2.8455503) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.514874995,-0.455642998,0.876284003,0.285730004) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.677064002,0.338901997,0.604615986,0.612818003) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-2.93084764,-2.16161823,-1.42879498,-4.45605373) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.865207016,-0.0796170011,-0.75324899,-0.188573003) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.594054997,0.205390006,-0.951743007,0.0716859996) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-1.51467049,-1.3593787,-0.454479277,-0.786625087) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.205326006,-0.616743028,-0.0480279997,-0.608357012) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r14.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r4.y = r14.x * r11.x + r4.y;
//             r14.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.y = 1 + -r14.x;
//             r14.x = r0.x ? r14.y : r14.x;
//             r14.x = -r14.x + r1.z;
//             r14.x = cmp(r4.w < r14.x);
//             r14.x = r14.x ? 0 : 1;
//             r10.z = r14.x * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.265305996,-0.051332999,-0.0958250016,-0.409231991) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.x = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r4.y = r11.x * r11.z + r4.y;
//             x0[0].x = r4.y;
//             r10.xy = r10.xy + r11.zw;
//             x1[0].x = r10.x;
//             r11.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r10.z = r11.x * r11.w + r10.z;
//             x0[1].x = r10.z;
//             x1[1].x = r10.y;
//             r4.y = r4.y / r10.x;
//             r10.x = r10.z / r10.y;
//             r4.y = -r10.x + r4.y;
//             r4.y = cmp(cb0[86].w >= abs(r4.y));
//             r4.y = (int)r10.w | (int)r4.y;
//           } else {
//             r4.y = -1;
//           }
//           if (r4.y == 0) {
//             r10.xyzw = float4(-0.454922915,-0.488759756,-3.00368571,-2.19938278) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r3.wwww * r11.xyzw + r10.xyzw;
//             r11.xyzw = r9.zwzw * float4(-0.0163199995,0.269957989,-0.249026,0.143399) + r1.xyxy;
//             r11.xyzw = min(r11.xyzw, r13.xyzw);
//             r11.xyzw = max(r11.xyzw, r12.xyzw);
//             r4.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//             r11.x = 1 + -r4.y;
//             r4.y = r0.x ? r11.x : r4.y;
//             r4.y = -r4.y + r1.z;
//             r4.y = cmp(r4.w < r4.y);
//             r4.y = r4.y ? 0 : 1;
//             r11.x = x0[0].x;
//             r4.y = r4.y * r10.x + r11.x;
//             r11.x = x1[0].x;
//             r10.x = r11.x + r10.x;
//             r11.x = t0.SampleLevel(s0_s, r11.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r11.y = x0[1].x;
//             r11.x = r11.x * r10.y + r11.y;
//             r11.y = x1[1].x;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(-0.0774020031,0.871890008,0.320827007,-0.713452995) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.y = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.z = 1 + -r11.y;
//             r11.y = r0.x ? r11.z : r11.y;
//             r11.y = -r11.y + r1.z;
//             r11.y = cmp(r4.w < r11.y);
//             r11.y = r11.y ? 0 : 1;
//             r4.y = r11.y * r10.z + r4.y;
//             r10.x = r10.x + r10.z;
//             r10.z = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.y = 1 + -r10.z;
//             r10.z = r0.x ? r11.y : r10.z;
//             r10.z = -r10.z + r1.z;
//             r10.z = cmp(r4.w < r10.z);
//             r10.z = r10.z ? 0 : 1;
//             r10.z = r10.z * r10.w + r11.x;
//             r10.y = r10.y + r10.w;
//             r11.xyzw = float4(-2.64347386,-0.213732481,-0.532696843,-0.526722968) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.176208004,-0.821267009,0.137686998,-0.00162400003) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.x = r11.x + r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(0.300395012,-0.0712909997,0.273250997,0.137443006) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.x = r10.x + r11.z;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.y = r10.y + r11.w;
//             r11.xyzw = float4(-0.841880858,-2.84530139,-4.22661066,-3.85716414) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.438787997,0.0538850017,0.126561999,0.851496994) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.x = r11.x + r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(0.421608001,0.847508013,0.893172979,-0.262668014) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.x = r10.x + r11.z;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.y = r10.y + r11.w;
//             r11.xyzw = float4(-2.67585087,-2.05042386,-3.10861135,-1.78108454) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.837432027,-0.101071998,0.734522998,0.189551994) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.x = r11.x + r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(0.880797029,0.075943999,-0.708419979,-0.0295349993) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.x = r10.x + r11.z;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.y = r10.y + r11.w;
//             r11.xyzw = float4(-1.43741608,-2.96929407,-0.427928865,-0.981528997) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.555553973,-0.298718989,-0.0457589999,-0.871110022) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.x = r11.x + r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(-0.138754994,-0.215933993,-0.488584995,0.069881998) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.x = r10.x + r11.z;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.y = r10.y + r11.w;
//             r11.xyzw = float4(-0.183740988,-1.48677206,-1.46949327,-0.856197476) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.112209998,0.0413400009,0.138922006,-0.628008008) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.x = r11.x + r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(0.317339987,-0.554506004,0.375212997,-0.244038999) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.x = r10.x + r11.z;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.y = r10.y + r11.w;
//             r11.xyzw = float4(-1.73866272,-1.12745857,-1.98774683,-1.30496395) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.256567001,0.651664972,0.135181993,0.525159001) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.x = r11.x + r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r14.xyzw = r9.zwzw * float4(0.701910973,-0.258121997,0.549497008,-0.228906006) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.x = r10.x + r11.z;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.y = r10.y + r11.w;
//             r11.xyzw = float4(-1.35949278,-1.30440199,-1.39065552,-1.56391883) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.605768025,0.0740789995,-0.582759023,-0.120619997) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r3.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r10.w = 1 + -r3.w;
//             r3.w = r0.x ? r10.w : r3.w;
//             r3.w = -r3.w + r1.z;
//             r3.w = cmp(r4.w < r3.w);
//             r3.w = r3.w ? 0 : 1;
//             r3.w = r3.w * r11.x + r4.y;
//             r4.y = r11.x + r10.x;
//             r10.x = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r10.w = 1 + -r10.x;
//             r10.x = r0.x ? r10.w : r10.x;
//             r10.x = -r10.x + r1.z;
//             r10.x = cmp(r4.w < r10.x);
//             r10.x = r10.x ? 0 : 1;
//             r10.x = r10.x * r11.y + r10.z;
//             r10.y = r11.y + r10.y;
//             r9.xyzw = r9.xyzw * float4(0.351929009,0.508746028,0.653662026,-0.103266999) + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r13.xyzw);
//             r9.xyzw = max(r9.xyzw, r12.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.w < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r11.z + r3.w;
//             x0[0].x = r3.w;
//             r3.w = r4.y + r11.z;
//             x1[0].x = r3.w;
//             r3.w = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r4.y = 1 + -r3.w;
//             r3.w = r0.x ? r4.y : r3.w;
//             r3.w = -r3.w + r1.z;
//             r3.w = cmp(r4.w < r3.w);
//             r3.w = r3.w ? 0 : 1;
//             r3.w = r3.w * r11.w + r10.x;
//             x0[1].x = r3.w;
//             r3.w = r10.y + r11.w;
//             x1[1].x = r3.w;
//           }
//           r3.w = x0[0].x;
//           r4.y = x0[1].x;
//           r3.w = r4.y + r3.w;
//           r4.y = x1[0].x;
//           r4.w = x1[1].x;
//           r4.y = r4.y + r4.w;
//           r4.z = r3.w / r4.y;
//         } else {
//           r3.w = cmp((int)r0.w == 1);
//           if (r3.w != 0) {
//             r9.xyzw = cb0[65].xyxy * r6.zwzw;
//             r10.xyzw = float4(-4.3113637,-3.52627683,-1.25792563,-1.55836809) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r3.w = r0.z / cb0[86].z;
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r3.wwww * r11.xyzw + r10.xyzw;
//             r11.xyzw = r9.zwzw * float4(-0.554247022,-0.771111012,-0.739494026,-0.535812974) + r1.xyxy;
//             r12.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[69].xyxy;
//             r13.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[69].zwzw;
//             r13.xyzw = cb0[69].xyxy + r13.xyzw;
//             r11.xyzw = min(r13.xyzw, r11.xyzw);
//             r11.xyzw = max(r11.xyzw, r12.xyzw);
//             r4.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//             r4.w = 1 + -r4.y;
//             r4.y = r0.x ? r4.w : r4.y;
//             r4.y = -r4.y + r1.z;
//             r4.w = cb0[84].z * r1.z;
//             r4.y = cmp(r4.w < r4.y);
//             r4.y = r4.y ? 0 : 1;
//             r11.x = t0.SampleLevel(s0_s, r11.zw, 0).x;
//             r11.y = 1 + -r11.x;
//             r11.x = r0.x ? r11.y : r11.x;
//             r11.x = -r11.x + r1.z;
//             r11.x = cmp(r4.w < r11.x);
//             r11.x = r11.x ? 0 : 1;
//             r14.xyzw = r9.zwzw * float4(-0.581834972,-0.00485200016,-0.617420018,-0.234534994) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.y = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.z = 1 + -r11.y;
//             r11.y = r0.x ? r11.z : r11.y;
//             r11.y = -r11.y + r1.z;
//             r11.y = cmp(r4.w < r11.y);
//             r11.y = r11.y ? 0 : 1;
//             r11.y = r11.y * r10.z;
//             r4.y = r4.y * r10.x + r11.y;
//             r11.y = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.z = 1 + -r11.y;
//             r11.y = r0.x ? r11.z : r11.y;
//             r11.y = -r11.y + r1.z;
//             r11.y = cmp(r4.w < r11.y);
//             r11.y = r11.y ? 0 : 1;
//             r11.y = r11.y * r10.w;
//             r11.x = r11.x * r10.y + r11.y;
//             r10.xy = r10.xy + r10.zw;
//             r14.xyzw = float4(-1.93653631,-2.47095561,-4.55345392,-2.5002408) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r3.wwww * r15.xyzw + r14.xyzw;
//             r15.xyzw = r9.zwzw * float4(-0.681692004,0.28470701,-0.812982976,0.104160003) + r1.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.z = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r10.w = 1 + -r10.z;
//             r10.z = r0.x ? r10.w : r10.z;
//             r10.z = -r10.z + r1.z;
//             r10.z = cmp(r4.w < r10.z);
//             r10.z = r10.z ? 0 : 1;
//             r4.y = r10.z * r14.x + r4.y;
//             r10.z = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r10.w = 1 + -r10.z;
//             r10.z = r0.x ? r10.w : r10.z;
//             r10.z = -r10.z + r1.z;
//             r10.z = cmp(r4.w < r10.z);
//             r10.z = r10.z ? 0 : 1;
//             r10.z = r10.z * r14.y + r11.x;
//             r10.xy = r14.xy + r10.xy;
//             r11.xyzw = r9.zwzw * float4(-0.607105017,0.847590983,-0.601184011,0.562425971) + r1.xyxy;
//             r11.xyzw = min(r11.xyzw, r13.xyzw);
//             r11.xyzw = max(r11.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r11.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r14.z + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r11.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r11.xyzw = float4(-4.74890566,-2.08656836,-0.674442112,-0.563664019) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.0234689992,-0.962522984,-0.123935997,-0.754447997) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.00485200016,-0.373394012,-0.183568999,-0.266274005) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-0.901273072,-0.22848022,-2.20538688,-5.67105389) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(-0.061067,0.460554987,-0.0859099999,0.118625) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(-0.221655995,0.751151979,-0.275979012,0.981567025) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-2.09949541,-4.05256033,-0.993613303,-1.25950646) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.404157013,-0.651479006,0.320596993,-0.883358002) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.465559989,-0.176183,0.410443008,-0.413067997) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-0.814901173,-0.939830005,-1.95053983,-3.42842364) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.41355601,0.123324998,0.353556991,0.322733015) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.492659986,0.553879976,0.266579002,0.867061019) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-2.98889518,-2.22883439,-6.2499094,-2.74358654) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.933348,-0.629809976,0.863582015,-0.852289975) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.920530021,-0.355693012,0.849300027,-0.0485550016) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             r10.xy = r10.xy + r11.zw;
//             r11.xyzw = float4(-4.86857986,-2.09602141,-3.33378029,-2.11065435) * cb0[86].yyyy;
//             r11.xyzw = exp2(r11.xyzw);
//             r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//             r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//             r14.xyzw = r9.zwzw * float4(0.952939987,0.156895995,0.691030979,0.330729008) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.x + r4.y;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r14.x = 1 + -r10.w;
//             r10.w = r0.x ? r14.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.y + r10.z;
//             r10.xy = r11.xy + r10.xy;
//             r14.xyzw = r9.zwzw * float4(0.898068011,0.633777976,0.89062202,0.85058099) + r1.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.y = r10.w * r11.z + r4.y;
//             x2[0].x = r4.y;
//             r10.xy = r10.xy + r11.zw;
//             x3[0].x = r10.x;
//             r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.x = 1 + -r10.w;
//             r10.w = r0.x ? r11.x : r10.w;
//             r10.w = -r10.w + r1.z;
//             r10.w = cmp(r4.w < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r11.w + r10.z;
//             x2[1].x = r10.z;
//             x3[1].x = r10.y;
//             r10.w = r4.y / r10.x;
//             r11.x = r10.z / r10.y;
//             r10.w = -r11.x + r10.w;
//             r10.w = cmp(cb0[86].w < abs(r10.w));
//             if (r10.w != 0) {
//               r11.xyzw = float4(-3.34006596,-2.93286467,-3.71318436,-7.90314722) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(-0.786126018,-0.767632008,-0.822138011,-0.281655014) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(-0.918942988,-0.0941499993,-0.934812009,0.366741002) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-1.96691215,-3.77197456,-2.41739202,-3.47431779) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(-0.835200012,0.93780297,-0.873225987,0.623889983) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(-0.341594011,-0.73754102,-0.483383,-0.976927996) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-1.07460284,-0.362947851,-0.6956411,-0.6932621) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(-0.204932004,-0.483565986,-0.214393005,-0.0592360012) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(-0.230811,0.305094004,-0.367534012,0.102450997) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-1.64544106,-1.18442786,-1.92146969,-0.611149013) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(-0.353130013,0.581529975,0.18186,-0.529649019) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(0.0877410024,-0.730765998,0.188207999,-0.289528996) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-0.137389123,-0.362524211,-0.549391091,-1.37142503) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(0.0359809995,-0.0834069997,0.212927997,0.0635090023) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(0.145970002,0.28104499,0.236609995,0.566026986) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-2.062181,-3.34212351,-4.83358812,-2.24719357) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(0.0213319995,0.760246992,0.637135029,-0.637623012) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(0.535875022,-0.885555983,0.686330974,-0.389934987) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-1.73362195,-1.39554238,-2.12258387,-5.77069855) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(0.677236021,-0.174291,0.61589402,0.0703449994) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.x + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r14.x = 1 + -r10.w;
//               r10.w = r0.x ? r14.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r14.xyzw = r9.zwzw * float4(0.715628982,0.999939024,0.676259995,0.711600006) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.y = r10.w * r11.z + r4.y;
//               r10.w = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.x = 1 + -r10.w;
//               r10.w = r0.x ? r11.x : r10.w;
//               r10.w = -r10.w + r1.z;
//               r10.w = cmp(r4.w < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r11.w + r10.z;
//               r10.xy = r10.xy + r11.zw;
//               r11.xyzw = float4(-0.851650417,-1.39399922,-1.21719301,-6.31343699) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r14.xyzw + r11.xyzw;
//               r14.xyzw = r9.zwzw * float4(-0.409772009,-0.175695002,-0.476669014,-0.395671993) + r1.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r10.w = 1 + -r3.w;
//               r3.w = r0.x ? r10.w : r3.w;
//               r3.w = -r3.w + r1.z;
//               r3.w = cmp(r4.w < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r3.w = r3.w * r11.x + r4.y;
//               r4.y = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r10.w = 1 + -r4.y;
//               r4.y = r0.x ? r10.w : r4.y;
//               r4.y = -r4.y + r1.z;
//               r4.y = cmp(r4.w < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r11.y + r10.z;
//               r10.xy = r11.xy + r10.xy;
//               r9.xyzw = r9.xyzw * float4(-0.439801991,0.362406999,0.506332994,0.876887977) + r1.xyxy;
//               r9.xyzw = min(r9.xyzw, r13.xyzw);
//               r9.xyzw = max(r9.xyzw, r12.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//               r9.y = 1 + -r9.x;
//               r9.x = r0.x ? r9.y : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r4.w < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r3.w = r9.x * r11.z + r3.w;
//               x2[0].x = r3.w;
//               r9.xy = r10.xy + r11.zw;
//               x3[0].x = r9.x;
//               r3.w = t0.SampleLevel(s0_s, r9.zw, 0).x;
//               r9.x = 1 + -r3.w;
//               r3.w = r0.x ? r9.x : r3.w;
//               r3.w = -r3.w + r1.z;
//               r3.w = cmp(r4.w < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r3.w = r3.w * r11.w + r4.y;
//               x2[1].x = r3.w;
//               x3[1].x = r9.y;
//             }
//             r3.w = x2[0].x;
//             r4.y = x2[1].x;
//             r3.w = r4.y + r3.w;
//             r4.y = x3[0].x;
//             r4.w = x3[1].x;
//             r4.y = r4.y + r4.w;
//             r4.z = r3.w / r4.y;
//           } else {
//             r9.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//             r10.xyzw = float4(-3.15952015,-1.38548744,-6.94438553,-1.06862068) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r0.z = r0.z / cb0[86].z;
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r3.w = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r4.y = 1 + -r3.w;
//             r3.w = r0.x ? r4.y : r3.w;
//             r3.w = -r3.w + r1.z;
//             r4.y = cb0[84].z * r1.z;
//             r3.w = cmp(r4.y < r3.w);
//             r3.w = r3.w ? 0 : 1;
//             r4.w = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.x = 1 + -r4.w;
//             r4.w = r0.x ? r9.x : r4.w;
//             r4.w = -r4.w + r1.z;
//             r4.w = cmp(r4.y < r4.w);
//             r4.w = r4.w ? 0 : 1;
//             r4.w = r4.w * r10.y;
//             r3.w = r3.w * r10.x + r4.w;
//             r4.w = r10.x + r10.y;
//             r9.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//             r10.xyzw = float4(-1.86925554,-3.26677227,-2.21088624,-3.31532168) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.x + r3.w;
//             r4.w = r10.x + r4.w;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.y + r3.w;
//             r4.w = r4.w + r10.y;
//             r9.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//             r10.xyzw = float4(-2.65607238,-0.509738743,-0.396726757,-1.48935831) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.x + r3.w;
//             r4.w = r10.x + r4.w;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.y + r3.w;
//             r4.w = r4.w + r10.y;
//             r9.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//             r10.xyzw = float4(-3.70001292,-1.88057292,-6.43597031,-1.00797105) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.x + r3.w;
//             r4.w = r10.x + r4.w;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.y + r3.w;
//             r4.w = r4.w + r10.y;
//             r9.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//             r10.xyzw = float4(-0.81859833,-0.207658067,-1.42133641,-1.874704) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.x + r3.w;
//             r4.w = r10.x + r4.w;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.y + r3.w;
//             r4.w = r4.w + r10.y;
//             r9.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//             r10.xyzw = float4(-3.30185962,-2.0618453,-3.57361269,-1.25295591) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.x + r3.w;
//             r4.w = r10.x + r4.w;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.y + r3.w;
//             r4.w = r4.w + r10.y;
//             r9.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//             r10.xyzw = float4(-2.69696546,-3.50032997,-5.50587749,-3.47976851) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.x + r3.w;
//             r4.w = r10.x + r4.w;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.y + r3.w;
//             r4.w = r4.w + r10.y;
//             r9.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.z + r3.w;
//             r4.w = r4.w + r10.z;
//             r9.x = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r4.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r3.w = r9.x * r10.w + r3.w;
//             r4.w = r4.w + r10.w;
//             r9.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//             r10.xyzw = float4(-4.2874279,-1.03613436,-0.570473433,-4.38599825) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r0.zzzz * r11.xyzw + r10.xyzw;
//             r9.xyzw = r9.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r9.xyzw = min(r9.xyzw, r8.xyzw);
//             r9.xyzw = max(r9.xyzw, r7.xyzw);
//             r0.z = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.x = 1 + -r0.z;
//             r0.z = r0.x ? r9.x : r0.z;
//             r0.z = r1.z + -r0.z;
//             r0.z = cmp(r4.y < r0.z);
//             r0.z = r0.z ? 0 : 1;
//             r0.z = r0.z * r10.x + r3.w;
//             r3.w = r10.x + r4.w;
//             r4.w = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.x = 1 + -r4.w;
//             r4.w = r0.x ? r9.x : r4.w;
//             r4.w = -r4.w + r1.z;
//             r4.w = cmp(r4.y < r4.w);
//             r4.w = r4.w ? 0 : 1;
//             r0.z = r4.w * r10.y + r0.z;
//             r3.w = r3.w + r10.y;
//             r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//             r6.xyzw = r6.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//             r6.xyzw = min(r6.xyzw, r8.xyzw);
//             r6.xyzw = max(r6.xyzw, r7.xyzw);
//             r4.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//             r6.x = 1 + -r4.w;
//             r4.w = r0.x ? r6.x : r4.w;
//             r4.w = -r4.w + r1.z;
//             r4.w = cmp(r4.y < r4.w);
//             r4.w = r4.w ? 0 : 1;
//             r0.z = r4.w * r10.z + r0.z;
//             r3.w = r3.w + r10.z;
//             r4.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//             r6.x = 1 + -r4.w;
//             r4.w = r0.x ? r6.x : r4.w;
//             r4.w = -r4.w + r1.z;
//             r4.y = cmp(r4.y < r4.w);
//             r4.y = r4.y ? 0 : 1;
//             r0.z = r4.y * r10.w + r0.z;
//             r3.w = r3.w + r10.w;
//             r4.z = r0.z / r3.w;
//           }
//         }
//       }
//       r0.z = cmp(cb0[10].w == 1.000000);
//       if (r0.z != 0) {
//         r6.x = dot(r2.xyzw, cb0[31].xyzw);
//         r6.y = dot(r2.xyzw, cb0[32].xyzw);
//         r6.z = dot(r2.xyzw, cb0[33].xyzw);
//         r0.z = dot(r2.xyzw, cb0[34].xyzw);
//         r6.xyz = r6.xyz / r0.zzz;
//         r6.xyz = cb0[9].xyz + -r6.xyz;
//         r6.xyz = cb0[9].www * r6.xyz;
//         r0.z = dot(r6.xyz, r6.xyz);
//         r0.z = sqrt(r0.z);
//         r0.z = r0.z * cb0[10].x + cb0[10].y;
//         r0.z = max(0, r0.z);
//         r0.z = -r0.z * r0.z + 1;
//         r0.z = max(0, r0.z);
//         r0.z = log2(r0.z);
//         r0.z = cb0[10].z * r0.z;
//         r0.z = exp2(r0.z);
//         r3.w = -1 + r4.z;
//         r4.z = r0.z * r3.w + 1;
//       }
//       r0.z = 1 + -r4.z;
//       r0.z = cb0[85].y * r0.z + r4.z;
//     } else {
//       r3.w = cmp(r4.x == 1.000000);
//       if (r3.w != 0) {
//         r3.w = cb0[r1.w+80].x + r0.y;
//         r4.y = cb0[r1.w+80].y * r3.w;
//         r4.z = cmp(cb0[85].x == 1.000000);
//         if (r4.z != 0) {
//           r3.w = r3.w * cb0[r1.w+80].y + -cb0[r1.w+60].x;
//           r3.w = r3.w / r4.y;
//           r6.xy = cb0[r1.w+60].zw * r3.ww;
//         } else {
//           r6.xy = cb0[r1.w+60].zw;
//         }
//         r7.xyzw = cb0[87].zzzz * r6.xyxy;
//         r6.xyzw = -r7.xyzw * r5.xyxy + r6.xyxy;
//         r7.xy = -cb0[8].zw + r3.xy;
//         r8.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].xyxy;
//         r9.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].zwzw;
//         r9.xyzw = cb0[r1.w+68].xyxy + r9.xyzw;
//         r7.xy = min(r9.xy, r7.xy);
//         r7.xy = max(r7.xy, r8.xy);
//         r3.w = t2.SampleLevel(s0_s, r7.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.x = r3.z + -r3.w;
//         r7.x = r7.x / r3.z;
//         r7.x = 2 + -r7.x;
//         r7.y = abs(r7.x) * abs(r7.x);
//         r7.y = r7.y * r7.y;
//         r7.z = abs(r7.x) * r7.y;
//         r7.y = r7.z * r3.w;
//         r7.x = 1;
//         r7.xyz = r4.www ? r7.xyz : 0;
//         r10.xyzw = cb0[8].zwzw * float4(-1,0,-1,1) + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r7.w = 1 + -r3.w;
//         r3.w = r0.x ? r7.w : r3.w;
//         r7.w = cmp(r3.w < r3.z);
//         r10.x = r3.z + -r3.w;
//         r10.x = r10.x / r3.z;
//         r10.x = 2 + -r10.x;
//         r10.y = abs(r10.x) * abs(r10.x);
//         r10.y = r10.y * r10.y;
//         r11.x = abs(r10.x) * r10.y;
//         r11.y = r3.w * r11.x + r7.y;
//         r11.z = abs(r10.x) * r10.y + r7.z;
//         r11.x = r4.w ? 2 : 1;
//         r7.xyz = r7.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = cb0[8].zwzw * float4(0,-1,0,1) + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xy = min(r9.zw, r3.xy);
//         r10.xy = max(r10.xy, r8.xy);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = cb0[8].zwzw * float4(1,-1,1,0) + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xy = cb0[8].zw + r3.xy;
//         r10.xy = min(r10.xy, r9.xy);
//         r10.xy = max(r10.xy, r8.xy);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r7.w = r3.z + -r3.w;
//         r7.w = r7.w / r3.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//         r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r6.xyzw = min(r6.xyzw, r9.xyzw);
//         r6.xyzw = max(r6.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r6.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r6.x = r3.z + -r3.w;
//         r6.x = r6.x / r3.z;
//         r6.x = 2 + -r6.x;
//         r6.y = abs(r6.x) * abs(r6.x);
//         r6.y = r6.y * r6.y;
//         r7.w = abs(r6.x) * r6.y;
//         r10.y = r3.w * r7.w + r7.y;
//         r10.z = abs(r6.x) * r6.y + r7.z;
//         r10.x = 1 + r7.x;
//         r7.xyz = r4.www ? r10.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r6.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r3.z);
//         r6.x = r3.z + -r3.w;
//         r6.x = r6.x / r3.z;
//         r6.x = 2 + -r6.x;
//         r6.y = abs(r6.x) * abs(r6.x);
//         r6.y = r6.y * r6.y;
//         r6.z = abs(r6.x) * r6.y;
//         r10.y = r3.w * r6.z + r7.y;
//         r10.z = abs(r6.x) * r6.y + r7.z;
//         r10.x = 1 + r7.x;
//         r6.xyz = r4.www ? r10.xyz : r7.xyz;
//         r3.w = cmp(r6.x == 0.000000);
//         if (r3.w != 0) {
//           r4.w = 1;
//         }
//         if (r3.w == 0) {
//           r6.z = r6.y / r6.z;
//           r3.w = (uint)r1.w << 2;
//           r6.xy = r3.xy * float2(2,-2) + float2(-1,1);
//           r6.w = 1;
//           r7.x = dot(r6.xyzw, cb0[r3.w+13].xyzw);
//           r3.w = dot(r6.xyzw, cb0[r3.w+14].xyzw);
//           r3.w = r7.x / r3.w;
//           r3.w = cb0[r1.w+80].x + r3.w;
//           r6.xy = cb0[r1.w+60].zw * cb0[86].xx;
//           r3.w = -r3.w * cb0[r1.w+80].y + r4.y;
//           r3.w = min(cb0[85].w, r3.w);
//           r3.w = r3.w / cb0[85].z;
//           r6.zw = -cb0[r1.w+60].zw * cb0[86].xx + cb0[r1.w+60].zw;
//           r6.xy = r3.ww * r6.zw + r6.xy;
//           if (r4.z != 0) {
//             r4.y = cb0[r1.w+60].x / r4.y;
//             r6.xy = r6.xy * r4.yy;
//           }
//           r7.xyzw = cb0[87].wwww * r6.xyxy;
//           r6.xyzw = -r7.xyzw * r5.zwzw + r6.xyxy;
//           if (r1.w == 0) {
//             r7.xyzw = cb0[r1.w+64].xyxy * r6.zwzw;
//             r10.xyzw = float4(-7.19990158,-8.57973289,-2.58234143,-6.14066792) * cb0[86].yyyy;
//             r10.xyzw = exp2(r10.xyzw);
//             r4.y = r3.w / cb0[86].z;
//             r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//             r10.xyzw = r4.yyyy * r11.xyzw + r10.xyzw;
//             r11.xyzw = r7.zwzw * float4(-0.520550013,-0.845854998,-0.751770973,-0.65545398) + r3.xyxy;
//             r12.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].xyxy;
//             r13.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].zwzw;
//             r13.xyzw = cb0[r1.w+68].xyxy + r13.xyzw;
//             r11.xyzw = min(r13.xyzw, r11.xyzw);
//             r11.xyzw = max(r11.xyzw, r12.xyzw);
//             r4.z = t0.SampleLevel(s0_s, r11.xy, 0).x;
//             r11.x = 1 + -r4.z;
//             r4.z = r0.x ? r11.x : r4.z;
//             r4.z = -r4.z + r3.z;
//             r11.x = cb0[84].z * r3.z;
//             r4.z = cmp(r11.x < r4.z);
//             r4.z = r4.z ? 0 : 1;
//             r11.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//             r11.z = 1 + -r11.y;
//             r11.y = r0.x ? r11.z : r11.y;
//             r11.y = -r11.y + r3.z;
//             r11.y = cmp(r11.x < r11.y);
//             r11.y = r11.y ? 0 : 1;
//             r14.xyzw = r7.zwzw * float4(-0.678021014,-0.483969986,-0.854924977,-0.490873992) + r3.xyxy;
//             r14.xyzw = min(r14.xyzw, r13.xyzw);
//             r14.xyzw = max(r14.xyzw, r12.xyzw);
//             r11.z = t0.SampleLevel(s0_s, r14.xy, 0).x;
//             r11.w = 1 + -r11.z;
//             r11.z = r0.x ? r11.w : r11.z;
//             r11.z = -r11.z + r3.z;
//             r11.z = cmp(r11.x < r11.z);
//             r11.z = r11.z ? 0 : 1;
//             r11.z = r11.z * r10.z;
//             r4.z = r4.z * r10.x + r11.z;
//             r11.z = t0.SampleLevel(s0_s, r14.zw, 0).x;
//             r11.w = 1 + -r11.z;
//             r11.z = r0.x ? r11.w : r11.z;
//             r11.z = -r11.z + r3.z;
//             r11.z = cmp(r11.x < r11.z);
//             r11.z = r11.z ? 0 : 1;
//             r11.z = r11.z * r10.w;
//             r11.y = r11.y * r10.y + r11.z;
//             r10.xy = r10.xy + r10.zw;
//             r14.xyzw = float4(-2.31478643,-2.89526725,-3.05039549,-3.99175406) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(-0.792430997,0.102303997,-0.761083007,0.412304997) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.z = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r10.w = 1 + -r10.z;
//             r10.z = r0.x ? r10.w : r10.z;
//             r10.z = -r10.z + r3.z;
//             r10.z = cmp(r11.x < r10.z);
//             r10.z = r10.z ? 0 : 1;
//             r4.z = r10.z * r14.x + r4.z;
//             r10.z = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r10.w = 1 + -r10.z;
//             r10.z = r0.x ? r10.w : r10.z;
//             r10.z = -r10.z + r3.z;
//             r10.z = cmp(r11.x < r10.z);
//             r10.z = r10.z ? 0 : 1;
//             r10.z = r10.z * r14.y + r11.y;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(-0.516156971,0.711853027,-0.700168014,0.622896016) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r14.xyzw = float4(-1.64231598,-3.31069326,-1.56545961,-0.724846363) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(-0.355834007,-0.579065979,-0.233941004,-0.868254006) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.x + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.y + r10.z;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(-0.490482002,-0.444795996,-0.319092005,-0.232715994) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r14.xyzw = float4(-1.00778794,-1.02969921,-1.71244168,-6.18136501) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(-0.27345401,0.421808004,-0.400938004,0.315499991) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.x + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.y + r10.z;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(-0.27500701,0.638119996,-0.458970994,0.872913003) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r14.xyzw = float4(-5.08163738,-5.33022404,-0.879165471,-0.595332325) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(0.0997809991,-0.965326011,0.334973991,-0.915804029) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.x + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.y + r10.z;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(0.0777480006,-0.449645996,0.156904995,-0.299495995) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r14.xyzw = float4(-0.82670176,-0.270535439,-6.51378965,-6.9205637) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(0.211989,0.381204009,0.0867429972,0.147351995) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.x + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.y + r10.z;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(0.0479819998,0.987891972,0.26492399,0.955706) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r14.xyzw = float4(-6.2543025,-6.55701685,-8.89246655,-1.43309534) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(0.736899972,-0.656467974,0.891682982,-0.42868799) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.x + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.y + r10.z;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(0.996095002,-0.0599219985,0.508179009,0.371794999) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             r10.xy = r10.xy + r14.zw;
//             r14.xyzw = float4(-3.67072701,-7.83593607,-7.05661964,-5.62808418) * cb0[86].yyyy;
//             r14.xyzw = exp2(r14.xyzw);
//             r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//             r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//             r15.xyzw = r7.zwzw * float4(0.799534023,0.458108991,0.757354975,0.646281004) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.x + r4.z;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.y + r10.z;
//             r10.xy = r14.xy + r10.xy;
//             r15.xyzw = r7.zwzw * float4(0.618847013,0.775925994,-0.945554972,-0.256700009) + r3.xyxy;
//             r15.xyzw = min(r15.xyzw, r13.xyzw);
//             r15.xyzw = max(r15.xyzw, r12.xyzw);
//             r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r4.z = r10.w * r14.z + r4.z;
//             x4[0].x = r4.z;
//             r10.xy = r10.xy + r14.zw;
//             x5[0].x = r10.x;
//             r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//             r11.y = 1 + -r10.w;
//             r10.w = r0.x ? r11.y : r10.w;
//             r10.w = -r10.w + r3.z;
//             r10.w = cmp(r11.x < r10.w);
//             r10.w = r10.w ? 0 : 1;
//             r10.z = r10.w * r14.w + r10.z;
//             x4[1].x = r10.z;
//             x5[1].x = r10.y;
//             r10.w = r4.z / r10.x;
//             r11.y = r10.z / r10.y;
//             r10.w = -r11.y + r10.w;
//             r10.w = cmp(cb0[86].w >= abs(r10.w));
//             if (r10.w == 0) {
//               r14.xyzw = float4(-2.85802603,-1.79378712,-2.96656418,-2.51360893) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.787473977,-0.350791991,-0.570385993,0.425458014) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.834991992,0.251581013,-0.497132003,-0.658249021) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-2.37573552,-1.10526347,-0.803203702,-0.611408174) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.324059993,-0.739427984,-0.322221011,-0.42730999) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.413078994,-0.107845001,-0.175731003,0.297403991) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-0.954242408,-2.72319531,-1.61956906,-3.85246587) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.0721649975,0.478475988,-0.261705011,0.807196975) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.401924998,0.541754007,0.457625985,-0.810500979) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-2.32574606,-0.932220578,-0.230742186,-1.12492311) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.48141101,-0.639600992,0.29273501,-0.375277996) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.00913599972,-0.147521004,0.498174995,0.212167993) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-0.845245004,-2.5714314,-1.46358633,-2.53469944) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.341248989,0.283086985,0.458700001,0.693847001) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.0123859998,0.637288988,0.712020993,-0.421494007) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-1.67824161,-3.67468786,-2.04183936,-2.8455503) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.514874995,-0.455642998,0.876284003,0.285730004) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.677064002,0.338901997,0.604615986,0.612818003) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-2.93084764,-2.16161823,-1.42879498,-4.45605373) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.865207016,-0.0796170011,-0.75324899,-0.188573003) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.594054997,0.205390006,-0.951743007,0.0716859996) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-1.51467049,-1.3593787,-0.454479277,-0.786625087) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.205326006,-0.616743028,-0.0480279997,-0.608357012) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.x + r4.z;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.265305996,-0.051332999,-0.0958250016,-0.409231991) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r11.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r4.z = r11.y * r14.z + r4.z;
//               x4[0].x = r4.z;
//               r10.xy = r10.xy + r14.zw;
//               x5[0].x = r10.x;
//               r11.y = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r10.z = r11.y * r14.w + r10.z;
//               x4[1].x = r10.z;
//               x5[1].x = r10.y;
//               r4.z = r4.z / r10.x;
//               r10.x = r10.z / r10.y;
//               r4.z = -r10.x + r4.z;
//               r4.z = cmp(cb0[86].w >= abs(r4.z));
//               r4.z = (int)r10.w | (int)r4.z;
//             } else {
//               r4.z = -1;
//             }
//             if (r4.z == 0) {
//               r10.xyzw = float4(-0.454922915,-0.488759756,-3.00368571,-2.19938278) * cb0[86].yyyy;
//               r10.xyzw = exp2(r10.xyzw);
//               r14.xyzw = float4(1,1,1,1) + -r10.xyzw;
//               r10.xyzw = r4.yyyy * r14.xyzw + r10.xyzw;
//               r14.xyzw = r7.zwzw * float4(-0.0163199995,0.269957989,-0.249026,0.143399) + r3.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r4.z = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.y = 1 + -r4.z;
//               r4.z = r0.x ? r11.y : r4.z;
//               r4.z = -r4.z + r3.z;
//               r4.z = cmp(r11.x < r4.z);
//               r4.z = r4.z ? 0 : 1;
//               r11.y = x4[0].x;
//               r4.z = r4.z * r10.x + r11.y;
//               r11.y = x5[0].x;
//               r10.x = r11.y + r10.x;
//               r11.y = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r11.z = x4[1].x;
//               r11.y = r11.y * r10.y + r11.z;
//               r11.z = x5[1].x;
//               r10.y = r11.z + r10.y;
//               r14.xyzw = r7.zwzw * float4(-0.0774020031,0.871890008,0.320827007,-0.713452995) + r3.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r11.z = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.w = 1 + -r11.z;
//               r11.z = r0.x ? r11.w : r11.z;
//               r11.z = -r11.z + r3.z;
//               r11.z = cmp(r11.x < r11.z);
//               r11.z = r11.z ? 0 : 1;
//               r4.z = r11.z * r10.z + r4.z;
//               r10.x = r10.x + r10.z;
//               r10.z = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.z = 1 + -r10.z;
//               r10.z = r0.x ? r11.z : r10.z;
//               r10.z = -r10.z + r3.z;
//               r10.z = cmp(r11.x < r10.z);
//               r10.z = r10.z ? 0 : 1;
//               r10.z = r10.z * r10.w + r11.y;
//               r10.y = r10.y + r10.w;
//               r14.xyzw = float4(-2.64347386,-0.213732481,-0.532696843,-0.526722968) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.176208004,-0.821267009,0.137686998,-0.00162400003) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.x = r14.x + r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r15.xyzw = r7.zwzw * float4(0.300395012,-0.0712909997,0.273250997,0.137443006) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.x = r10.x + r14.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.y = r10.y + r14.w;
//               r14.xyzw = float4(-0.841880858,-2.84530139,-4.22661066,-3.85716414) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.438787997,0.0538850017,0.126561999,0.851496994) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.x = r14.x + r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r15.xyzw = r7.zwzw * float4(0.421608001,0.847508013,0.893172979,-0.262668014) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.x = r10.x + r14.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.y = r10.y + r14.w;
//               r14.xyzw = float4(-2.67585087,-2.05042386,-3.10861135,-1.78108454) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.837432027,-0.101071998,0.734522998,0.189551994) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.x = r14.x + r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r15.xyzw = r7.zwzw * float4(0.880797029,0.075943999,-0.708419979,-0.0295349993) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.x = r10.x + r14.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.y = r10.y + r14.w;
//               r14.xyzw = float4(-1.43741608,-2.96929407,-0.427928865,-0.981528997) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.555553973,-0.298718989,-0.0457589999,-0.871110022) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.x = r14.x + r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r15.xyzw = r7.zwzw * float4(-0.138754994,-0.215933993,-0.488584995,0.069881998) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.x = r10.x + r14.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.y = r10.y + r14.w;
//               r14.xyzw = float4(-0.183740988,-1.48677206,-1.46949327,-0.856197476) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.112209998,0.0413400009,0.138922006,-0.628008008) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.x = r14.x + r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r15.xyzw = r7.zwzw * float4(0.317339987,-0.554506004,0.375212997,-0.244038999) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.x = r10.x + r14.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.y = r10.y + r14.w;
//               r14.xyzw = float4(-1.73866272,-1.12745857,-1.98774683,-1.30496395) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.256567001,0.651664972,0.135181993,0.525159001) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.x = r14.x + r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r15.xyzw = r7.zwzw * float4(0.701910973,-0.258121997,0.549497008,-0.228906006) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.x = r10.x + r14.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.y = r10.y + r14.w;
//               r14.xyzw = float4(-1.35949278,-1.30440199,-1.39065552,-1.56391883) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.605768025,0.0740789995,-0.582759023,-0.120619997) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r4.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r10.w = 1 + -r4.y;
//               r4.y = r0.x ? r10.w : r4.y;
//               r4.y = -r4.y + r3.z;
//               r4.y = cmp(r11.x < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r14.x + r4.z;
//               r4.z = r14.x + r10.x;
//               r10.x = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r10.w = 1 + -r10.x;
//               r10.x = r0.x ? r10.w : r10.x;
//               r10.x = -r10.x + r3.z;
//               r10.x = cmp(r11.x < r10.x);
//               r10.x = r10.x ? 0 : 1;
//               r10.x = r10.x * r14.y + r10.z;
//               r10.y = r14.y + r10.y;
//               r7.xyzw = r7.xyzw * float4(0.351929009,0.508746028,0.653662026,-0.103266999) + r3.xyxy;
//               r7.xyzw = min(r7.xyzw, r13.xyzw);
//               r7.xyzw = max(r7.xyzw, r12.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r7.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r11.x < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r14.z + r4.y;
//               x4[0].x = r4.y;
//               r4.y = r4.z + r14.z;
//               x5[0].x = r4.y;
//               r4.y = t0.SampleLevel(s0_s, r7.zw, 0).x;
//               r4.z = 1 + -r4.y;
//               r4.y = r0.x ? r4.z : r4.y;
//               r4.y = -r4.y + r3.z;
//               r4.y = cmp(r11.x < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r14.w + r10.x;
//               x4[1].x = r4.y;
//               r4.y = r10.y + r14.w;
//               x5[1].x = r4.y;
//             }
//             r4.y = x4[0].x;
//             r4.z = x4[1].x;
//             r4.y = r4.y + r4.z;
//             r4.z = x5[0].x;
//             r7.x = x5[1].x;
//             r4.z = r7.x + r4.z;
//             r4.w = r4.y / r4.z;
//           } else {
//             r4.y = cmp((int)r1.w == 1);
//             if (r4.y != 0) {
//               r7.xyzw = cb0[65].xyxy * r6.zwzw;
//               r10.xyzw = float4(-4.3113637,-3.52627683,-1.25792563,-1.55836809) * cb0[86].yyyy;
//               r10.xyzw = exp2(r10.xyzw);
//               r4.y = r3.w / cb0[86].z;
//               r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//               r10.xyzw = r4.yyyy * r11.xyzw + r10.xyzw;
//               r11.xyzw = r7.zwzw * float4(-0.554247022,-0.771111012,-0.739494026,-0.535812974) + r3.xyxy;
//               r12.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[69].xyxy;
//               r13.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[69].zwzw;
//               r13.xyzw = cb0[69].xyxy + r13.xyzw;
//               r11.xyzw = min(r13.xyzw, r11.xyzw);
//               r11.xyzw = max(r11.xyzw, r12.xyzw);
//               r4.z = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r11.x = 1 + -r4.z;
//               r4.z = r0.x ? r11.x : r4.z;
//               r4.z = -r4.z + r3.z;
//               r11.x = cb0[84].z * r3.z;
//               r4.z = cmp(r11.x < r4.z);
//               r4.z = r4.z ? 0 : 1;
//               r11.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r11.z = 1 + -r11.y;
//               r11.y = r0.x ? r11.z : r11.y;
//               r11.y = -r11.y + r3.z;
//               r11.y = cmp(r11.x < r11.y);
//               r11.y = r11.y ? 0 : 1;
//               r14.xyzw = r7.zwzw * float4(-0.581834972,-0.00485200016,-0.617420018,-0.234534994) + r3.xyxy;
//               r14.xyzw = min(r14.xyzw, r13.xyzw);
//               r14.xyzw = max(r14.xyzw, r12.xyzw);
//               r11.z = t0.SampleLevel(s0_s, r14.xy, 0).x;
//               r11.w = 1 + -r11.z;
//               r11.z = r0.x ? r11.w : r11.z;
//               r11.z = -r11.z + r3.z;
//               r11.z = cmp(r11.x < r11.z);
//               r11.z = r11.z ? 0 : 1;
//               r11.z = r11.z * r10.z;
//               r4.z = r4.z * r10.x + r11.z;
//               r11.z = t0.SampleLevel(s0_s, r14.zw, 0).x;
//               r11.w = 1 + -r11.z;
//               r11.z = r0.x ? r11.w : r11.z;
//               r11.z = -r11.z + r3.z;
//               r11.z = cmp(r11.x < r11.z);
//               r11.z = r11.z ? 0 : 1;
//               r11.z = r11.z * r10.w;
//               r11.y = r11.y * r10.y + r11.z;
//               r10.xy = r10.xy + r10.zw;
//               r14.xyzw = float4(-1.93653631,-2.47095561,-4.55345392,-2.5002408) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.681692004,0.28470701,-0.812982976,0.104160003) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.z = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r10.w = 1 + -r10.z;
//               r10.z = r0.x ? r10.w : r10.z;
//               r10.z = -r10.z + r3.z;
//               r10.z = cmp(r11.x < r10.z);
//               r10.z = r10.z ? 0 : 1;
//               r4.z = r10.z * r14.x + r4.z;
//               r10.z = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r10.w = 1 + -r10.z;
//               r10.z = r0.x ? r10.w : r10.z;
//               r10.z = -r10.z + r3.z;
//               r10.z = cmp(r11.x < r10.z);
//               r10.z = r10.z ? 0 : 1;
//               r10.z = r10.z * r14.y + r11.y;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.607105017,0.847590983,-0.601184011,0.562425971) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-4.74890566,-2.08656836,-0.674442112,-0.563664019) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.0234689992,-0.962522984,-0.123935997,-0.754447997) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.00485200016,-0.373394012,-0.183568999,-0.266274005) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-0.901273072,-0.22848022,-2.20538688,-5.67105389) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(-0.061067,0.460554987,-0.0859099999,0.118625) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(-0.221655995,0.751151979,-0.275979012,0.981567025) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-2.09949541,-4.05256033,-0.993613303,-1.25950646) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.404157013,-0.651479006,0.320596993,-0.883358002) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.465559989,-0.176183,0.410443008,-0.413067997) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-0.814901173,-0.939830005,-1.95053983,-3.42842364) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.41355601,0.123324998,0.353556991,0.322733015) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.492659986,0.553879976,0.266579002,0.867061019) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-2.98889518,-2.22883439,-6.2499094,-2.74358654) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.933348,-0.629809976,0.863582015,-0.852289975) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.920530021,-0.355693012,0.849300027,-0.0485550016) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               r10.xy = r10.xy + r14.zw;
//               r14.xyzw = float4(-4.86857986,-2.09602141,-3.33378029,-2.11065435) * cb0[86].yyyy;
//               r14.xyzw = exp2(r14.xyzw);
//               r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//               r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//               r15.xyzw = r7.zwzw * float4(0.952939987,0.156895995,0.691030979,0.330729008) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.x + r4.z;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.y + r10.z;
//               r10.xy = r14.xy + r10.xy;
//               r15.xyzw = r7.zwzw * float4(0.898068011,0.633777976,0.89062202,0.85058099) + r3.xyxy;
//               r15.xyzw = min(r15.xyzw, r13.xyzw);
//               r15.xyzw = max(r15.xyzw, r12.xyzw);
//               r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r4.z = r10.w * r14.z + r4.z;
//               x6[0].x = r4.z;
//               r10.xy = r10.xy + r14.zw;
//               x7[0].x = r10.x;
//               r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//               r11.y = 1 + -r10.w;
//               r10.w = r0.x ? r11.y : r10.w;
//               r10.w = -r10.w + r3.z;
//               r10.w = cmp(r11.x < r10.w);
//               r10.w = r10.w ? 0 : 1;
//               r10.z = r10.w * r14.w + r10.z;
//               x6[1].x = r10.z;
//               x7[1].x = r10.y;
//               r10.w = r4.z / r10.x;
//               r11.y = r10.z / r10.y;
//               r10.w = -r11.y + r10.w;
//               r10.w = cmp(cb0[86].w < abs(r10.w));
//               if (r10.w != 0) {
//                 r14.xyzw = float4(-3.34006596,-2.93286467,-3.71318436,-7.90314722) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(-0.786126018,-0.767632008,-0.822138011,-0.281655014) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(-0.918942988,-0.0941499993,-0.934812009,0.366741002) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-1.96691215,-3.77197456,-2.41739202,-3.47431779) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(-0.835200012,0.93780297,-0.873225987,0.623889983) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(-0.341594011,-0.73754102,-0.483383,-0.976927996) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-1.07460284,-0.362947851,-0.6956411,-0.6932621) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(-0.204932004,-0.483565986,-0.214393005,-0.0592360012) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(-0.230811,0.305094004,-0.367534012,0.102450997) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-1.64544106,-1.18442786,-1.92146969,-0.611149013) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(-0.353130013,0.581529975,0.18186,-0.529649019) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(0.0877410024,-0.730765998,0.188207999,-0.289528996) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-0.137389123,-0.362524211,-0.549391091,-1.37142503) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(0.0359809995,-0.0834069997,0.212927997,0.0635090023) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(0.145970002,0.28104499,0.236609995,0.566026986) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-2.062181,-3.34212351,-4.83358812,-2.24719357) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(0.0213319995,0.760246992,0.637135029,-0.637623012) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(0.535875022,-0.885555983,0.686330974,-0.389934987) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-1.73362195,-1.39554238,-2.12258387,-5.77069855) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(0.677236021,-0.174291,0.61589402,0.0703449994) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.x + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r15.xyzw = r7.zwzw * float4(0.715628982,0.999939024,0.676259995,0.711600006) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r10.w = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r4.z = r10.w * r14.z + r4.z;
//                 r10.w = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r11.y = 1 + -r10.w;
//                 r10.w = r0.x ? r11.y : r10.w;
//                 r10.w = -r10.w + r3.z;
//                 r10.w = cmp(r11.x < r10.w);
//                 r10.w = r10.w ? 0 : 1;
//                 r10.z = r10.w * r14.w + r10.z;
//                 r10.xy = r10.xy + r14.zw;
//                 r14.xyzw = float4(-0.851650417,-1.39399922,-1.21719301,-6.31343699) * cb0[86].yyyy;
//                 r14.xyzw = exp2(r14.xyzw);
//                 r15.xyzw = float4(1,1,1,1) + -r14.xyzw;
//                 r14.xyzw = r4.yyyy * r15.xyzw + r14.xyzw;
//                 r15.xyzw = r7.zwzw * float4(-0.409772009,-0.175695002,-0.476669014,-0.395671993) + r3.xyxy;
//                 r15.xyzw = min(r15.xyzw, r13.xyzw);
//                 r15.xyzw = max(r15.xyzw, r12.xyzw);
//                 r4.y = t0.SampleLevel(s0_s, r15.xy, 0).x;
//                 r10.w = 1 + -r4.y;
//                 r4.y = r0.x ? r10.w : r4.y;
//                 r4.y = -r4.y + r3.z;
//                 r4.y = cmp(r11.x < r4.y);
//                 r4.y = r4.y ? 0 : 1;
//                 r4.y = r4.y * r14.x + r4.z;
//                 r4.z = t0.SampleLevel(s0_s, r15.zw, 0).x;
//                 r10.w = 1 + -r4.z;
//                 r4.z = r0.x ? r10.w : r4.z;
//                 r4.z = -r4.z + r3.z;
//                 r4.z = cmp(r11.x < r4.z);
//                 r4.z = r4.z ? 0 : 1;
//                 r4.z = r4.z * r14.y + r10.z;
//                 r10.xy = r14.xy + r10.xy;
//                 r7.xyzw = r7.xyzw * float4(-0.439801991,0.362406999,0.506332994,0.876887977) + r3.xyxy;
//                 r7.xyzw = min(r7.xyzw, r13.xyzw);
//                 r7.xyzw = max(r7.xyzw, r12.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r7.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r11.x < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r4.y = r7.x * r14.z + r4.y;
//                 x6[0].x = r4.y;
//                 r7.xy = r10.xy + r14.zw;
//                 x7[0].x = r7.x;
//                 r4.y = t0.SampleLevel(s0_s, r7.zw, 0).x;
//                 r7.x = 1 + -r4.y;
//                 r4.y = r0.x ? r7.x : r4.y;
//                 r4.y = -r4.y + r3.z;
//                 r4.y = cmp(r11.x < r4.y);
//                 r4.y = r4.y ? 0 : 1;
//                 r4.y = r4.y * r14.w + r4.z;
//                 x6[1].x = r4.y;
//                 x7[1].x = r7.y;
//               }
//               r4.y = x6[0].x;
//               r4.z = x6[1].x;
//               r4.y = r4.y + r4.z;
//               r4.z = x7[0].x;
//               r7.x = x7[1].x;
//               r4.z = r7.x + r4.z;
//               r4.w = r4.y / r4.z;
//             } else {
//               r7.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//               r10.xyzw = float4(-3.15952015,-1.38548744,-6.94438553,-1.06862068) * cb0[86].yyyy;
//               r10.xyzw = exp2(r10.xyzw);
//               r3.w = r3.w / cb0[86].z;
//               r11.xyzw = float4(1,1,1,1) + -r10.xyzw;
//               r10.xyzw = r3.wwww * r11.xyzw + r10.xyzw;
//               r7.xyzw = r7.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r7.xyzw = min(r7.xyzw, r9.xyzw);
//               r7.xyzw = max(r7.xyzw, r8.xyzw);
//               r4.y = t0.SampleLevel(s0_s, r7.xy, 0).x;
//               r4.z = 1 + -r4.y;
//               r4.y = r0.x ? r4.z : r4.y;
//               r4.y = -r4.y + r3.z;
//               r4.z = cb0[84].z * r3.z;
//               r4.y = cmp(r4.z < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r7.x = t0.SampleLevel(s0_s, r7.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r4.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r7.x = r7.x * r10.y;
//               r4.y = r4.y * r10.x + r7.x;
//               r7.x = r10.x + r10.y;
//               r11.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//               r11.xyzw = r11.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r9.xyzw);
//               r11.xyzw = max(r11.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r10.z + r4.y;
//               r7.x = r7.x + r10.z;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r10.w + r4.y;
//               r7.x = r7.x + r10.w;
//               r10.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//               r11.xyzw = float4(-1.86925554,-3.26677227,-2.21088624,-3.31532168) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.x + r4.y;
//               r7.x = r11.x + r7.x;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.y + r4.y;
//               r7.x = r7.x + r11.y;
//               r10.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.z + r4.y;
//               r7.x = r7.x + r11.z;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.w + r4.y;
//               r7.x = r7.x + r11.w;
//               r10.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//               r11.xyzw = float4(-2.65607238,-0.509738743,-0.396726757,-1.48935831) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.x + r4.y;
//               r7.x = r11.x + r7.x;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.y + r4.y;
//               r7.x = r7.x + r11.y;
//               r10.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.z + r4.y;
//               r7.x = r7.x + r11.z;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.w + r4.y;
//               r7.x = r7.x + r11.w;
//               r10.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//               r11.xyzw = float4(-3.70001292,-1.88057292,-6.43597031,-1.00797105) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.x + r4.y;
//               r7.x = r11.x + r7.x;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.y + r4.y;
//               r7.x = r7.x + r11.y;
//               r10.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.z + r4.y;
//               r7.x = r7.x + r11.z;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.w + r4.y;
//               r7.x = r7.x + r11.w;
//               r10.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//               r11.xyzw = float4(-0.81859833,-0.207658067,-1.42133641,-1.874704) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.x + r4.y;
//               r7.x = r11.x + r7.x;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.y + r4.y;
//               r7.x = r7.x + r11.y;
//               r10.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.z + r4.y;
//               r7.x = r7.x + r11.z;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.w + r4.y;
//               r7.x = r7.x + r11.w;
//               r10.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//               r11.xyzw = float4(-3.30185962,-2.0618453,-3.57361269,-1.25295591) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.x + r4.y;
//               r7.x = r11.x + r7.x;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.y + r4.y;
//               r7.x = r7.x + r11.y;
//               r10.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.z + r4.y;
//               r7.x = r7.x + r11.z;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.w + r4.y;
//               r7.x = r7.x + r11.w;
//               r10.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//               r11.xyzw = float4(-2.69696546,-3.50032997,-5.50587749,-3.47976851) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.x + r4.y;
//               r7.x = r11.x + r7.x;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.y + r4.y;
//               r7.x = r7.x + r11.y;
//               r10.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.z + r4.y;
//               r7.x = r7.x + r11.z;
//               r7.y = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r4.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r4.y = r7.y * r11.w + r4.y;
//               r7.x = r7.x + r11.w;
//               r10.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//               r11.xyzw = float4(-4.2874279,-1.03613436,-0.570473433,-4.38599825) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r10.xyzw = r10.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r10.xyzw = min(r10.xyzw, r9.xyzw);
//               r10.xyzw = max(r10.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r10.xy, 0).x;
//               r7.y = 1 + -r3.w;
//               r3.w = r0.x ? r7.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r4.z < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r3.w = r3.w * r11.x + r4.y;
//               r4.y = r11.x + r7.x;
//               r7.x = t0.SampleLevel(s0_s, r10.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r4.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r11.y + r3.w;
//               r4.y = r4.y + r11.y;
//               r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r6.x = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r6.y = 1 + -r6.x;
//               r6.x = r0.x ? r6.y : r6.x;
//               r6.x = -r6.x + r3.z;
//               r6.x = cmp(r4.z < r6.x);
//               r6.x = r6.x ? 0 : 1;
//               r3.w = r6.x * r11.z + r3.w;
//               r4.y = r4.y + r11.z;
//               r6.x = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r6.y = 1 + -r6.x;
//               r6.x = r0.x ? r6.y : r6.x;
//               r6.x = -r6.x + r3.z;
//               r4.z = cmp(r4.z < r6.x);
//               r4.z = r4.z ? 0 : 1;
//               r3.w = r4.z * r11.w + r3.w;
//               r4.y = r4.y + r11.w;
//               r4.w = r3.w / r4.y;
//             }
//           }
//         }
//         r3.w = cmp(cb0[10].w == 1.000000);
//         if (r3.w != 0) {
//           r6.x = dot(r2.xyzw, cb0[31].xyzw);
//           r6.y = dot(r2.xyzw, cb0[32].xyzw);
//           r6.z = dot(r2.xyzw, cb0[33].xyzw);
//           r3.w = dot(r2.xyzw, cb0[34].xyzw);
//           r6.xyz = r6.xyz / r3.www;
//           r6.xyz = cb0[9].xyz + -r6.xyz;
//           r6.xyz = cb0[9].www * r6.xyz;
//           r3.w = dot(r6.xyz, r6.xyz);
//           r3.w = sqrt(r3.w);
//           r3.w = r3.w * cb0[10].x + cb0[10].y;
//           r3.w = max(0, r3.w);
//           r3.w = -r3.w * r3.w + 1;
//           r3.w = max(0, r3.w);
//           r3.w = log2(r3.w);
//           r3.w = cb0[10].z * r3.w;
//           r3.w = exp2(r3.w);
//           r4.y = -1 + r4.w;
//           r4.w = r3.w * r4.y + 1;
//         }
//         r3.w = 1 + -r4.w;
//         r0.z = cb0[85].y * r3.w + r4.w;
//       } else {
//         r3.w = cb0[r0.w+80].x + r0.y;
//         r4.y = cb0[r0.w+80].y * r3.w;
//         r4.z = cmp(cb0[85].x == 1.000000);
//         if (r4.z != 0) {
//           r3.w = r3.w * cb0[r0.w+80].y + -cb0[r0.w+60].x;
//           r3.w = r3.w / r4.y;
//           r6.xy = cb0[r0.w+60].zw * r3.ww;
//         } else {
//           r6.xy = cb0[r0.w+60].zw;
//         }
//         r7.xyzw = cb0[87].zzzz * r6.xyxy;
//         r6.xyzw = -r7.xyzw * r5.xyxy + r6.xyxy;
//         r7.xy = -cb0[8].zw + r1.xy;
//         r8.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].xyxy;
//         r9.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].zwzw;
//         r9.xyzw = cb0[r0.w+68].xyxy + r9.xyzw;
//         r7.xy = min(r9.xy, r7.xy);
//         r7.xy = max(r7.xy, r8.xy);
//         r3.w = t2.SampleLevel(s0_s, r7.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.x = -r3.w + r1.z;
//         r7.x = r7.x / r1.z;
//         r7.x = 2 + -r7.x;
//         r7.y = abs(r7.x) * abs(r7.x);
//         r7.y = r7.y * r7.y;
//         r7.z = abs(r7.x) * r7.y;
//         r7.y = r7.z * r3.w;
//         r7.x = 1;
//         r7.xyz = r4.www ? r7.xyz : 0;
//         r10.xyzw = cb0[8].zwzw * float4(-1,0,-1,1) + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r7.w = 1 + -r3.w;
//         r3.w = r0.x ? r7.w : r3.w;
//         r7.w = cmp(r3.w < r1.z);
//         r10.x = -r3.w + r1.z;
//         r10.x = r10.x / r1.z;
//         r10.x = 2 + -r10.x;
//         r10.y = abs(r10.x) * abs(r10.x);
//         r10.y = r10.y * r10.y;
//         r11.x = abs(r10.x) * r10.y;
//         r11.y = r3.w * r11.x + r7.y;
//         r11.z = abs(r10.x) * r10.y + r7.z;
//         r11.x = r4.w ? 2 : 1;
//         r7.xyz = r7.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = cb0[8].zwzw * float4(0,-1,0,1) + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xy = min(r9.zw, r1.xy);
//         r10.xy = max(r10.xy, r8.xy);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = cb0[8].zwzw * float4(1,-1,1,0) + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xy = cb0[8].zw + r1.xy;
//         r10.xy = min(r10.xy, r9.xy);
//         r10.xy = max(r10.xy, r8.xy);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r10.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//         r10.xyzw = r10.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r10.xyzw = min(r10.xyzw, r9.xyzw);
//         r10.xyzw = max(r10.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r7.w = -r3.w + r1.z;
//         r7.w = r7.w / r1.z;
//         r7.w = 2 + -r7.w;
//         r10.x = abs(r7.w) * abs(r7.w);
//         r10.x = r10.x * r10.x;
//         r10.y = r10.x * abs(r7.w);
//         r11.y = r3.w * r10.y + r7.y;
//         r11.z = abs(r7.w) * r10.x + r7.z;
//         r11.x = 1 + r7.x;
//         r7.xyz = r4.www ? r11.xyz : r7.xyz;
//         r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//         r6.xyzw = r6.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//         r6.xyzw = min(r6.xyzw, r9.xyzw);
//         r6.xyzw = max(r6.xyzw, r8.xyzw);
//         r3.w = t2.SampleLevel(s0_s, r6.xy, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r6.x = -r3.w + r1.z;
//         r6.x = r6.x / r1.z;
//         r6.x = 2 + -r6.x;
//         r6.y = abs(r6.x) * abs(r6.x);
//         r6.y = r6.y * r6.y;
//         r7.w = abs(r6.x) * r6.y;
//         r8.y = r3.w * r7.w + r7.y;
//         r8.z = abs(r6.x) * r6.y + r7.z;
//         r8.x = 1 + r7.x;
//         r7.xyz = r4.www ? r8.xyz : r7.xyz;
//         r3.w = t2.SampleLevel(s0_s, r6.zw, 0).x;
//         r4.w = 1 + -r3.w;
//         r3.w = r0.x ? r4.w : r3.w;
//         r4.w = cmp(r3.w < r1.z);
//         r6.x = -r3.w + r1.z;
//         r6.x = r6.x / r1.z;
//         r6.x = 2 + -r6.x;
//         r6.y = abs(r6.x) * abs(r6.x);
//         r6.y = r6.y * r6.y;
//         r6.z = abs(r6.x) * r6.y;
//         r8.y = r3.w * r6.z + r7.y;
//         r8.z = abs(r6.x) * r6.y + r7.z;
//         r8.x = 1 + r7.x;
//         r6.xyz = r4.www ? r8.xyz : r7.xyz;
//         r3.w = cmp(r6.x == 0.000000);
//         if (r3.w != 0) {
//           r4.w = 1;
//         }
//         if (r3.w == 0) {
//           r6.z = r6.y / r6.z;
//           r3.w = (uint)r0.w << 2;
//           r6.xy = r1.xy * float2(2,-2) + float2(-1,1);
//           r6.w = 1;
//           r7.x = dot(r6.xyzw, cb0[r3.w+13].xyzw);
//           r3.w = dot(r6.xyzw, cb0[r3.w+14].xyzw);
//           r3.w = r7.x / r3.w;
//           r3.w = cb0[r0.w+80].x + r3.w;
//           r6.xy = cb0[r0.w+60].zw * cb0[86].xx;
//           r3.w = -r3.w * cb0[r0.w+80].y + r4.y;
//           r3.w = min(cb0[85].w, r3.w);
//           r3.w = r3.w / cb0[85].z;
//           r6.zw = -cb0[r0.w+60].zw * cb0[86].xx + cb0[r0.w+60].zw;
//           r6.xy = r3.ww * r6.zw + r6.xy;
//           if (r4.z != 0) {
//             r4.y = cb0[r0.w+60].x / r4.y;
//             r6.xy = r6.xy * r4.yy;
//           }
//           r7.xyzw = cb0[87].wwww * r6.xyxy;
//           r6.xyzw = -r7.xyzw * r5.zwzw + r6.xyxy;
//           if (r0.w == 0) {
//             r7.xyzw = cb0[r0.w+64].xyxy * r6.zwzw;
//             r8.xyzw = float4(-7.19990158,-8.57973289,-2.58234143,-6.14066792) * cb0[86].yyyy;
//             r8.xyzw = exp2(r8.xyzw);
//             r4.y = r3.w / cb0[86].z;
//             r9.xyzw = float4(1,1,1,1) + -r8.xyzw;
//             r8.xyzw = r4.yyyy * r9.xyzw + r8.xyzw;
//             r9.xyzw = r7.zwzw * float4(-0.520550013,-0.845854998,-0.751770973,-0.65545398) + r1.xyxy;
//             r10.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].xyxy;
//             r11.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].zwzw;
//             r11.xyzw = cb0[r0.w+68].xyxy + r11.xyzw;
//             r9.xyzw = min(r11.xyzw, r9.xyzw);
//             r9.xyzw = max(r9.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//             r9.y = 1 + -r9.x;
//             r9.x = r0.x ? r9.y : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.y = cb0[84].z * r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r9.z = t0.SampleLevel(s0_s, r9.zw, 0).x;
//             r9.w = 1 + -r9.z;
//             r9.z = r0.x ? r9.w : r9.z;
//             r9.z = -r9.z + r1.z;
//             r9.z = cmp(r9.y < r9.z);
//             r9.z = r9.z ? 0 : 1;
//             r12.xyzw = r7.zwzw * float4(-0.678021014,-0.483969986,-0.854924977,-0.490873992) + r1.xyxy;
//             r12.xyzw = min(r12.xyzw, r11.xyzw);
//             r12.xyzw = max(r12.xyzw, r10.xyzw);
//             r9.w = t0.SampleLevel(s0_s, r12.xy, 0).x;
//             r12.x = 1 + -r9.w;
//             r9.w = r0.x ? r12.x : r9.w;
//             r9.w = -r9.w + r1.z;
//             r9.w = cmp(r9.y < r9.w);
//             r9.w = r9.w ? 0 : 1;
//             r9.w = r9.w * r8.z;
//             r9.x = r9.x * r8.x + r9.w;
//             r9.w = t0.SampleLevel(s0_s, r12.zw, 0).x;
//             r12.x = 1 + -r9.w;
//             r9.w = r0.x ? r12.x : r9.w;
//             r9.w = -r9.w + r1.z;
//             r9.w = cmp(r9.y < r9.w);
//             r9.w = r9.w ? 0 : 1;
//             r9.w = r9.w * r8.w;
//             r9.z = r9.z * r8.y + r9.w;
//             r8.xy = r8.xy + r8.zw;
//             r12.xyzw = float4(-2.31478643,-2.89526725,-3.05039549,-3.99175406) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(-0.792430997,0.102303997,-0.761083007,0.412304997) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r8.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r8.w = 1 + -r8.z;
//             r8.z = r0.x ? r8.w : r8.z;
//             r8.z = -r8.z + r1.z;
//             r8.z = cmp(r9.y < r8.z);
//             r8.z = r8.z ? 0 : 1;
//             r8.z = r8.z * r12.x + r9.x;
//             r8.w = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.x = 1 + -r8.w;
//             r8.w = r0.x ? r9.x : r8.w;
//             r8.w = -r8.w + r1.z;
//             r8.w = cmp(r9.y < r8.w);
//             r8.w = r8.w ? 0 : 1;
//             r8.w = r8.w * r12.y + r9.z;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(-0.516156971,0.711853027,-0.700168014,0.622896016) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             r8.xy = r8.xy + r12.zw;
//             r12.xyzw = float4(-1.64231598,-3.31069326,-1.56545961,-0.724846363) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(-0.355834007,-0.579065979,-0.233941004,-0.868254006) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.x + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.y + r8.w;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(-0.490482002,-0.444795996,-0.319092005,-0.232715994) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             r8.xy = r8.xy + r12.zw;
//             r12.xyzw = float4(-1.00778794,-1.02969921,-1.71244168,-6.18136501) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(-0.27345401,0.421808004,-0.400938004,0.315499991) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.x + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.y + r8.w;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(-0.27500701,0.638119996,-0.458970994,0.872913003) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             r8.xy = r8.xy + r12.zw;
//             r12.xyzw = float4(-5.08163738,-5.33022404,-0.879165471,-0.595332325) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(0.0997809991,-0.965326011,0.334973991,-0.915804029) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.x + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.y + r8.w;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(0.0777480006,-0.449645996,0.156904995,-0.299495995) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             r8.xy = r8.xy + r12.zw;
//             r12.xyzw = float4(-0.82670176,-0.270535439,-6.51378965,-6.9205637) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(0.211989,0.381204009,0.0867429972,0.147351995) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.x + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.y + r8.w;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(0.0479819998,0.987891972,0.26492399,0.955706) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             r8.xy = r8.xy + r12.zw;
//             r12.xyzw = float4(-6.2543025,-6.55701685,-8.89246655,-1.43309534) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(0.736899972,-0.656467974,0.891682982,-0.42868799) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.x + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.y + r8.w;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(0.996095002,-0.0599219985,0.508179009,0.371794999) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             r8.xy = r8.xy + r12.zw;
//             r12.xyzw = float4(-3.67072701,-7.83593607,-7.05661964,-5.62808418) * cb0[86].yyyy;
//             r12.xyzw = exp2(r12.xyzw);
//             r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//             r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//             r13.xyzw = r7.zwzw * float4(0.799534023,0.458108991,0.757354975,0.646281004) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.x + r8.z;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.y + r8.w;
//             r8.xy = r12.xy + r8.xy;
//             r13.xyzw = r7.zwzw * float4(0.618847013,0.775925994,-0.945554972,-0.256700009) + r1.xyxy;
//             r13.xyzw = min(r13.xyzw, r11.xyzw);
//             r13.xyzw = max(r13.xyzw, r10.xyzw);
//             r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.z = r9.x * r12.z + r8.z;
//             x8[0].x = r8.z;
//             r8.xy = r8.xy + r12.zw;
//             x9[0].x = r8.x;
//             r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//             r9.z = 1 + -r9.x;
//             r9.x = r0.x ? r9.z : r9.x;
//             r9.x = -r9.x + r1.z;
//             r9.x = cmp(r9.y < r9.x);
//             r9.x = r9.x ? 0 : 1;
//             r8.w = r9.x * r12.w + r8.w;
//             x8[1].x = r8.w;
//             x9[1].x = r8.y;
//             r9.xz = r8.zw / r8.xy;
//             r9.x = r9.x + -r9.z;
//             r9.x = cmp(cb0[86].w >= abs(r9.x));
//             if (r9.x == 0) {
//               r12.xyzw = float4(-2.85802603,-1.79378712,-2.96656418,-2.51360893) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.787473977,-0.350791991,-0.570385993,0.425458014) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.834991992,0.251581013,-0.497132003,-0.658249021) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-2.37573552,-1.10526347,-0.803203702,-0.611408174) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.324059993,-0.739427984,-0.322221011,-0.42730999) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.413078994,-0.107845001,-0.175731003,0.297403991) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-0.954242408,-2.72319531,-1.61956906,-3.85246587) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.0721649975,0.478475988,-0.261705011,0.807196975) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.401924998,0.541754007,0.457625985,-0.810500979) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-2.32574606,-0.932220578,-0.230742186,-1.12492311) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.48141101,-0.639600992,0.29273501,-0.375277996) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.00913599972,-0.147521004,0.498174995,0.212167993) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-0.845245004,-2.5714314,-1.46358633,-2.53469944) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.341248989,0.283086985,0.458700001,0.693847001) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.0123859998,0.637288988,0.712020993,-0.421494007) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-1.67824161,-3.67468786,-2.04183936,-2.8455503) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.514874995,-0.455642998,0.876284003,0.285730004) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.677064002,0.338901997,0.604615986,0.612818003) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-2.93084764,-2.16161823,-1.42879498,-4.45605373) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.865207016,-0.0796170011,-0.75324899,-0.188573003) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.594054997,0.205390006,-0.951743007,0.0716859996) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-1.51467049,-1.3593787,-0.454479277,-0.786625087) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.205326006,-0.616743028,-0.0480279997,-0.608357012) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.x + r8.z;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.265305996,-0.051332999,-0.0958250016,-0.409231991) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.z = r9.z * r12.z + r8.z;
//               x8[0].x = r8.z;
//               r8.xy = r8.xy + r12.zw;
//               x9[0].x = r8.x;
//               r9.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r8.w = r9.z * r12.w + r8.w;
//               x8[1].x = r8.w;
//               x9[1].x = r8.y;
//               r8.xy = r8.zw / r8.xy;
//               r8.x = r8.x + -r8.y;
//               r8.x = cmp(cb0[86].w >= abs(r8.x));
//               r8.x = (int)r9.x | (int)r8.x;
//             } else {
//               r8.x = -1;
//             }
//             if (r8.x == 0) {
//               r8.xyzw = float4(-0.454922915,-0.488759756,-3.00368571,-2.19938278) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r4.yyyy * r12.xyzw + r8.xyzw;
//               r12.xyzw = r7.zwzw * float4(-0.0163199995,0.269957989,-0.249026,0.143399) + r1.xyxy;
//               r12.xyzw = min(r12.xyzw, r11.xyzw);
//               r12.xyzw = max(r12.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r12.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r9.z = x8[0].x;
//               r9.x = r9.x * r8.x + r9.z;
//               r9.z = x9[0].x;
//               r8.x = r9.z + r8.x;
//               r9.z = t0.SampleLevel(s0_s, r12.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r9.w = x8[1].x;
//               r9.z = r9.z * r8.y + r9.w;
//               r9.w = x9[1].x;
//               r8.y = r9.w + r8.y;
//               r12.xyzw = r7.zwzw * float4(-0.0774020031,0.871890008,0.320827007,-0.713452995) + r1.xyxy;
//               r12.xyzw = min(r12.xyzw, r11.xyzw);
//               r12.xyzw = max(r12.xyzw, r10.xyzw);
//               r9.w = t0.SampleLevel(s0_s, r12.xy, 0).x;
//               r12.x = 1 + -r9.w;
//               r9.w = r0.x ? r12.x : r9.w;
//               r9.w = -r9.w + r1.z;
//               r9.w = cmp(r9.y < r9.w);
//               r9.w = r9.w ? 0 : 1;
//               r9.x = r9.w * r8.z + r9.x;
//               r8.x = r8.x + r8.z;
//               r8.z = t0.SampleLevel(s0_s, r12.zw, 0).x;
//               r9.w = 1 + -r8.z;
//               r8.z = r0.x ? r9.w : r8.z;
//               r8.z = -r8.z + r1.z;
//               r8.z = cmp(r9.y < r8.z);
//               r8.z = r8.z ? 0 : 1;
//               r8.z = r8.z * r8.w + r9.z;
//               r8.y = r8.y + r8.w;
//               r12.xyzw = float4(-2.64347386,-0.213732481,-0.532696843,-0.526722968) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.176208004,-0.821267009,0.137686998,-0.00162400003) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r8.w = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r8.w;
//               r8.w = r0.x ? r9.z : r8.w;
//               r8.w = -r8.w + r1.z;
//               r8.w = cmp(r9.y < r8.w);
//               r8.w = r8.w ? 0 : 1;
//               r8.w = r8.w * r12.x + r9.x;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.y + r8.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.300395012,-0.0712909997,0.273250997,0.137443006) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.z + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.w + r8.z;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-0.841880858,-2.84530139,-4.22661066,-3.85716414) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.438787997,0.0538850017,0.126561999,0.851496994) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.x + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.y + r8.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.421608001,0.847508013,0.893172979,-0.262668014) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.z + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.w + r8.z;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-2.67585087,-2.05042386,-3.10861135,-1.78108454) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.837432027,-0.101071998,0.734522998,0.189551994) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.x + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.y + r8.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.880797029,0.075943999,-0.708419979,-0.0295349993) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.z + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.w + r8.z;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-1.43741608,-2.96929407,-0.427928865,-0.981528997) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.555553973,-0.298718989,-0.0457589999,-0.871110022) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.x + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.y + r8.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.138754994,-0.215933993,-0.488584995,0.069881998) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.z + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.w + r8.z;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-0.183740988,-1.48677206,-1.46949327,-0.856197476) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.112209998,0.0413400009,0.138922006,-0.628008008) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.x + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.y + r8.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.317339987,-0.554506004,0.375212997,-0.244038999) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.z + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.w + r8.z;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-1.73866272,-1.12745857,-1.98774683,-1.30496395) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.256567001,0.651664972,0.135181993,0.525159001) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.x + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.y + r8.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.701910973,-0.258121997,0.549497008,-0.228906006) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.z + r8.w;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.w + r8.z;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-1.35949278,-1.30440199,-1.39065552,-1.56391883) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.605768025,0.0740789995,-0.582759023,-0.120619997) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r4.y = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.x = 1 + -r4.y;
//               r4.y = r0.x ? r9.x : r4.y;
//               r4.y = -r4.y + r1.z;
//               r4.y = cmp(r9.y < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r12.x + r8.w;
//               r8.x = r12.x + r8.x;
//               r8.w = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.x = 1 + -r8.w;
//               r8.w = r0.x ? r9.x : r8.w;
//               r8.w = -r8.w + r1.z;
//               r8.w = cmp(r9.y < r8.w);
//               r8.w = r8.w ? 0 : 1;
//               r8.z = r8.w * r12.y + r8.z;
//               r8.y = r12.y + r8.y;
//               r7.xyzw = r7.xyzw * float4(0.351929009,0.508746028,0.653662026,-0.103266999) + r1.xyxy;
//               r7.xyzw = min(r7.xyzw, r11.xyzw);
//               r7.xyzw = max(r7.xyzw, r10.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r7.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r1.z;
//               r7.x = cmp(r9.y < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r12.z + r4.y;
//               x8[0].x = r4.y;
//               r4.y = r8.x + r12.z;
//               x9[0].x = r4.y;
//               r4.y = t0.SampleLevel(s0_s, r7.zw, 0).x;
//               r7.x = 1 + -r4.y;
//               r4.y = r0.x ? r7.x : r4.y;
//               r4.y = -r4.y + r1.z;
//               r4.y = cmp(r9.y < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r12.w + r8.z;
//               x8[1].x = r4.y;
//               r4.y = r8.y + r12.w;
//               x9[1].x = r4.y;
//             }
//             r4.y = x8[0].x;
//             r7.x = x8[1].x;
//             r4.y = r7.x + r4.y;
//             r7.x = x9[0].x;
//             r7.y = x9[1].x;
//             r7.x = r7.x + r7.y;
//             r4.w = r4.y / r7.x;
//           } else {
//             r4.y = cmp((int)r0.w == 1);
//             if (r4.y != 0) {
//               r7.xyzw = cb0[65].xyxy * r6.zwzw;
//               r8.xyzw = float4(-4.3113637,-3.52627683,-1.25792563,-1.55836809) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r4.y = r3.w / cb0[86].z;
//               r9.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r4.yyyy * r9.xyzw + r8.xyzw;
//               r9.xyzw = r7.zwzw * float4(-0.554247022,-0.771111012,-0.739494026,-0.535812974) + r1.xyxy;
//               r10.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[69].xyxy;
//               r11.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[69].zwzw;
//               r11.xyzw = cb0[69].xyxy + r11.xyzw;
//               r9.xyzw = min(r11.xyzw, r9.xyzw);
//               r9.xyzw = max(r9.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r9.xy, 0).x;
//               r9.y = 1 + -r9.x;
//               r9.x = r0.x ? r9.y : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.y = cb0[84].z * r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r9.z = t0.SampleLevel(s0_s, r9.zw, 0).x;
//               r9.w = 1 + -r9.z;
//               r9.z = r0.x ? r9.w : r9.z;
//               r9.z = -r9.z + r1.z;
//               r9.z = cmp(r9.y < r9.z);
//               r9.z = r9.z ? 0 : 1;
//               r12.xyzw = r7.zwzw * float4(-0.581834972,-0.00485200016,-0.617420018,-0.234534994) + r1.xyxy;
//               r12.xyzw = min(r12.xyzw, r11.xyzw);
//               r12.xyzw = max(r12.xyzw, r10.xyzw);
//               r9.w = t0.SampleLevel(s0_s, r12.xy, 0).x;
//               r12.x = 1 + -r9.w;
//               r9.w = r0.x ? r12.x : r9.w;
//               r9.w = -r9.w + r1.z;
//               r9.w = cmp(r9.y < r9.w);
//               r9.w = r9.w ? 0 : 1;
//               r9.w = r9.w * r8.z;
//               r9.x = r9.x * r8.x + r9.w;
//               r9.w = t0.SampleLevel(s0_s, r12.zw, 0).x;
//               r12.x = 1 + -r9.w;
//               r9.w = r0.x ? r12.x : r9.w;
//               r9.w = -r9.w + r1.z;
//               r9.w = cmp(r9.y < r9.w);
//               r9.w = r9.w ? 0 : 1;
//               r9.w = r9.w * r8.w;
//               r9.z = r9.z * r8.y + r9.w;
//               r8.xy = r8.xy + r8.zw;
//               r12.xyzw = float4(-1.93653631,-2.47095561,-4.55345392,-2.5002408) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.681692004,0.28470701,-0.812982976,0.104160003) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r8.z = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r8.w = 1 + -r8.z;
//               r8.z = r0.x ? r8.w : r8.z;
//               r8.z = -r8.z + r1.z;
//               r8.z = cmp(r9.y < r8.z);
//               r8.z = r8.z ? 0 : 1;
//               r8.z = r8.z * r12.x + r9.x;
//               r8.w = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.x = 1 + -r8.w;
//               r8.w = r0.x ? r9.x : r8.w;
//               r8.w = -r8.w + r1.z;
//               r8.w = cmp(r9.y < r8.w);
//               r8.w = r8.w ? 0 : 1;
//               r8.w = r8.w * r12.y + r9.z;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.607105017,0.847590983,-0.601184011,0.562425971) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-4.74890566,-2.08656836,-0.674442112,-0.563664019) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.0234689992,-0.962522984,-0.123935997,-0.754447997) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.x + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.00485200016,-0.373394012,-0.183568999,-0.266274005) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-0.901273072,-0.22848022,-2.20538688,-5.67105389) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(-0.061067,0.460554987,-0.0859099999,0.118625) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.x + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(-0.221655995,0.751151979,-0.275979012,0.981567025) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-2.09949541,-4.05256033,-0.993613303,-1.25950646) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.404157013,-0.651479006,0.320596993,-0.883358002) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.x + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.465559989,-0.176183,0.410443008,-0.413067997) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-0.814901173,-0.939830005,-1.95053983,-3.42842364) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.41355601,0.123324998,0.353556991,0.322733015) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.x + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.492659986,0.553879976,0.266579002,0.867061019) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-2.98889518,-2.22883439,-6.2499094,-2.74358654) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.933348,-0.629809976,0.863582015,-0.852289975) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.x + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.920530021,-0.355693012,0.849300027,-0.0485550016) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               r8.xy = r8.xy + r12.zw;
//               r12.xyzw = float4(-4.86857986,-2.09602141,-3.33378029,-2.11065435) * cb0[86].yyyy;
//               r12.xyzw = exp2(r12.xyzw);
//               r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//               r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//               r13.xyzw = r7.zwzw * float4(0.952939987,0.156895995,0.691030979,0.330729008) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.x + r8.z;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.y + r8.w;
//               r8.xy = r12.xy + r8.xy;
//               r13.xyzw = r7.zwzw * float4(0.898068011,0.633777976,0.89062202,0.85058099) + r1.xyxy;
//               r13.xyzw = min(r13.xyzw, r11.xyzw);
//               r13.xyzw = max(r13.xyzw, r10.xyzw);
//               r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.z = r9.x * r12.z + r8.z;
//               x10[0].x = r8.z;
//               r8.xy = r8.xy + r12.zw;
//               x11[0].x = r8.x;
//               r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//               r9.z = 1 + -r9.x;
//               r9.x = r0.x ? r9.z : r9.x;
//               r9.x = -r9.x + r1.z;
//               r9.x = cmp(r9.y < r9.x);
//               r9.x = r9.x ? 0 : 1;
//               r8.w = r9.x * r12.w + r8.w;
//               x10[1].x = r8.w;
//               x11[1].x = r8.y;
//               r9.xz = r8.zw / r8.xy;
//               r9.x = r9.x + -r9.z;
//               r9.x = cmp(cb0[86].w < abs(r9.x));
//               if (r9.x != 0) {
//                 r12.xyzw = float4(-3.34006596,-2.93286467,-3.71318436,-7.90314722) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(-0.786126018,-0.767632008,-0.822138011,-0.281655014) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(-0.918942988,-0.0941499993,-0.934812009,0.366741002) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-1.96691215,-3.77197456,-2.41739202,-3.47431779) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(-0.835200012,0.93780297,-0.873225987,0.623889983) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(-0.341594011,-0.73754102,-0.483383,-0.976927996) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-1.07460284,-0.362947851,-0.6956411,-0.6932621) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(-0.204932004,-0.483565986,-0.214393005,-0.0592360012) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(-0.230811,0.305094004,-0.367534012,0.102450997) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-1.64544106,-1.18442786,-1.92146969,-0.611149013) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(-0.353130013,0.581529975,0.18186,-0.529649019) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(0.0877410024,-0.730765998,0.188207999,-0.289528996) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-0.137389123,-0.362524211,-0.549391091,-1.37142503) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(0.0359809995,-0.0834069997,0.212927997,0.0635090023) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(0.145970002,0.28104499,0.236609995,0.566026986) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-2.062181,-3.34212351,-4.83358812,-2.24719357) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(0.0213319995,0.760246992,0.637135029,-0.637623012) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(0.535875022,-0.885555983,0.686330974,-0.389934987) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-1.73362195,-1.39554238,-2.12258387,-5.77069855) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(0.677236021,-0.174291,0.61589402,0.0703449994) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.x + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r13.xyzw = r7.zwzw * float4(0.715628982,0.999939024,0.676259995,0.711600006) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r9.x = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.z = r9.x * r12.z + r8.z;
//                 r9.x = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.z = 1 + -r9.x;
//                 r9.x = r0.x ? r9.z : r9.x;
//                 r9.x = -r9.x + r1.z;
//                 r9.x = cmp(r9.y < r9.x);
//                 r9.x = r9.x ? 0 : 1;
//                 r8.w = r9.x * r12.w + r8.w;
//                 r8.xy = r8.xy + r12.zw;
//                 r12.xyzw = float4(-0.851650417,-1.39399922,-1.21719301,-6.31343699) * cb0[86].yyyy;
//                 r12.xyzw = exp2(r12.xyzw);
//                 r13.xyzw = float4(1,1,1,1) + -r12.xyzw;
//                 r12.xyzw = r4.yyyy * r13.xyzw + r12.xyzw;
//                 r13.xyzw = r7.zwzw * float4(-0.409772009,-0.175695002,-0.476669014,-0.395671993) + r1.xyxy;
//                 r13.xyzw = min(r13.xyzw, r11.xyzw);
//                 r13.xyzw = max(r13.xyzw, r10.xyzw);
//                 r4.y = t0.SampleLevel(s0_s, r13.xy, 0).x;
//                 r9.x = 1 + -r4.y;
//                 r4.y = r0.x ? r9.x : r4.y;
//                 r4.y = -r4.y + r1.z;
//                 r4.y = cmp(r9.y < r4.y);
//                 r4.y = r4.y ? 0 : 1;
//                 r4.y = r4.y * r12.x + r8.z;
//                 r8.z = t0.SampleLevel(s0_s, r13.zw, 0).x;
//                 r9.x = 1 + -r8.z;
//                 r8.z = r0.x ? r9.x : r8.z;
//                 r8.z = -r8.z + r1.z;
//                 r8.z = cmp(r9.y < r8.z);
//                 r8.z = r8.z ? 0 : 1;
//                 r8.z = r8.z * r12.y + r8.w;
//                 r8.xy = r12.xy + r8.xy;
//                 r7.xyzw = r7.xyzw * float4(-0.439801991,0.362406999,0.506332994,0.876887977) + r1.xyxy;
//                 r7.xyzw = min(r7.xyzw, r11.xyzw);
//                 r7.xyzw = max(r7.xyzw, r10.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r7.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r1.z;
//                 r7.x = cmp(r9.y < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r4.y = r7.x * r12.z + r4.y;
//                 x10[0].x = r4.y;
//                 r7.xy = r8.xy + r12.zw;
//                 x11[0].x = r7.x;
//                 r4.y = t0.SampleLevel(s0_s, r7.zw, 0).x;
//                 r7.x = 1 + -r4.y;
//                 r4.y = r0.x ? r7.x : r4.y;
//                 r4.y = -r4.y + r1.z;
//                 r4.y = cmp(r9.y < r4.y);
//                 r4.y = r4.y ? 0 : 1;
//                 r4.y = r4.y * r12.w + r8.z;
//                 x10[1].x = r4.y;
//                 x11[1].x = r7.y;
//               }
//               r4.y = x10[0].x;
//               r7.x = x10[1].x;
//               r4.y = r7.x + r4.y;
//               r7.x = x11[0].x;
//               r7.y = x11[1].x;
//               r7.x = r7.x + r7.y;
//               r4.w = r4.y / r7.x;
//             } else {
//               r7.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//               r8.xyzw = float4(-3.15952015,-1.38548744,-6.94438553,-1.06862068) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r3.w = r3.w / cb0[86].z;
//               r9.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r3.wwww * r9.xyzw + r8.xyzw;
//               r7.xyzw = r7.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r9.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].xyxy;
//               r10.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r0.w+68].zwzw;
//               r10.xyzw = cb0[r0.w+68].xyxy + r10.xyzw;
//               r7.xyzw = min(r10.xyzw, r7.xyzw);
//               r7.xyzw = max(r7.xyzw, r9.xyzw);
//               r4.y = t0.SampleLevel(s0_s, r7.xy, 0).x;
//               r7.x = 1 + -r4.y;
//               r4.y = r0.x ? r7.x : r4.y;
//               r4.y = -r4.y + r1.z;
//               r7.x = cb0[84].z * r1.z;
//               r4.y = cmp(r7.x < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r7.y = t0.SampleLevel(s0_s, r7.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r1.z;
//               r7.y = cmp(r7.x < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r7.y = r7.y * r8.y;
//               r4.y = r4.y * r8.x + r7.y;
//               r7.y = r8.x + r8.y;
//               r11.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//               r11.xyzw = r11.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r8.z + r4.y;
//               r7.y = r7.y + r8.z;
//               r7.z = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r8.w + r4.y;
//               r7.y = r7.y + r8.w;
//               r8.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//               r11.xyzw = float4(-1.86925554,-3.26677227,-2.21088624,-3.31532168) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.x + r4.y;
//               r7.y = r11.x + r7.y;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.y + r4.y;
//               r7.y = r7.y + r11.y;
//               r8.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.z + r4.y;
//               r7.y = r7.y + r11.z;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.w + r4.y;
//               r7.y = r7.y + r11.w;
//               r8.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//               r11.xyzw = float4(-2.65607238,-0.509738743,-0.396726757,-1.48935831) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.x + r4.y;
//               r7.y = r11.x + r7.y;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.y + r4.y;
//               r7.y = r7.y + r11.y;
//               r8.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.z + r4.y;
//               r7.y = r7.y + r11.z;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.w + r4.y;
//               r7.y = r7.y + r11.w;
//               r8.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//               r11.xyzw = float4(-3.70001292,-1.88057292,-6.43597031,-1.00797105) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.x + r4.y;
//               r7.y = r11.x + r7.y;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.y + r4.y;
//               r7.y = r7.y + r11.y;
//               r8.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.z + r4.y;
//               r7.y = r7.y + r11.z;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.w + r4.y;
//               r7.y = r7.y + r11.w;
//               r8.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//               r11.xyzw = float4(-0.81859833,-0.207658067,-1.42133641,-1.874704) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.x + r4.y;
//               r7.y = r11.x + r7.y;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.y + r4.y;
//               r7.y = r7.y + r11.y;
//               r8.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.z + r4.y;
//               r7.y = r7.y + r11.z;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.w + r4.y;
//               r7.y = r7.y + r11.w;
//               r8.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//               r11.xyzw = float4(-3.30185962,-2.0618453,-3.57361269,-1.25295591) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.x + r4.y;
//               r7.y = r11.x + r7.y;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.y + r4.y;
//               r7.y = r7.y + r11.y;
//               r8.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.z + r4.y;
//               r7.y = r7.y + r11.z;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.w + r4.y;
//               r7.y = r7.y + r11.w;
//               r8.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//               r11.xyzw = float4(-2.69696546,-3.50032997,-5.50587749,-3.47976851) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.x + r4.y;
//               r7.y = r11.x + r7.y;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.y + r4.y;
//               r7.y = r7.y + r11.y;
//               r8.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.z = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.z + r4.y;
//               r7.y = r7.y + r11.z;
//               r7.z = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.w = 1 + -r7.z;
//               r7.z = r0.x ? r7.w : r7.z;
//               r7.z = -r7.z + r1.z;
//               r7.z = cmp(r7.x < r7.z);
//               r7.z = r7.z ? 0 : 1;
//               r4.y = r7.z * r11.w + r4.y;
//               r7.y = r7.y + r11.w;
//               r8.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//               r11.xyzw = float4(-4.2874279,-1.03613436,-0.570473433,-4.38599825) * cb0[86].yyyy;
//               r11.xyzw = exp2(r11.xyzw);
//               r12.xyzw = float4(1,1,1,1) + -r11.xyzw;
//               r11.xyzw = r3.wwww * r12.xyzw + r11.xyzw;
//               r8.xyzw = r8.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.z = 1 + -r3.w;
//               r3.w = r0.x ? r7.z : r3.w;
//               r3.w = -r3.w + r1.z;
//               r3.w = cmp(r7.x < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r3.w = r3.w * r11.x + r4.y;
//               r4.y = r11.x + r7.y;
//               r7.y = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r1.z;
//               r7.y = cmp(r7.x < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r11.y + r3.w;
//               r4.y = r4.y + r11.y;
//               r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r0.w+64].xyxy + r1.xyxy;
//               r6.xyzw = min(r6.xyzw, r10.xyzw);
//               r6.xyzw = max(r6.xyzw, r9.xyzw);
//               r0.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r1.x = 1 + -r0.w;
//               r0.w = r0.x ? r1.x : r0.w;
//               r0.w = r1.z + -r0.w;
//               r0.w = cmp(r7.x < r0.w);
//               r0.w = r0.w ? 0 : 1;
//               r0.w = r0.w * r11.z + r3.w;
//               r1.x = r4.y + r11.z;
//               r1.y = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r3.w = 1 + -r1.y;
//               r1.y = r0.x ? r3.w : r1.y;
//               r1.y = r1.z + -r1.y;
//               r1.y = cmp(r7.x < r1.y);
//               r1.y = r1.y ? 0 : 1;
//               r0.w = r1.y * r11.w + r0.w;
//               r1.x = r1.x + r11.w;
//               r4.w = r0.w / r1.x;
//             }
//           }
//         }
//         r0.y = cb0[r1.w+80].x + r0.y;
//         r0.w = cb0[r1.w+80].y * r0.y;
//         if (r4.z != 0) {
//           r0.y = r0.y * cb0[r1.w+80].y + -cb0[r1.w+60].x;
//           r0.y = r0.y / r0.w;
//           r1.xy = cb0[r1.w+60].zw * r0.yy;
//         } else {
//           r1.xy = cb0[r1.w+60].zw;
//         }
//         r6.xyzw = cb0[87].zzzz * r1.xyxy;
//         r6.xyzw = -r6.xyzw * r5.xyxy + r1.xyxy;
//         r1.xy = -cb0[8].zw + r3.xy;
//         r7.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].xyxy;
//         r8.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].zwzw;
//         r8.xyzw = cb0[r1.w+68].xyxy + r8.xyzw;
//         r1.xy = min(r8.xy, r1.xy);
//         r1.xy = max(r1.xy, r7.xy);
//         r0.y = t2.SampleLevel(s0_s, r1.xy, 0).x;
//         r1.x = 1 + -r0.y;
//         r0.y = r0.x ? r1.x : r0.y;
//         r1.x = cmp(r0.y < r3.z);
//         r1.y = r3.z + -r0.y;
//         r1.y = r1.y / r3.z;
//         r1.y = 2 + -r1.y;
//         r1.z = abs(r1.y) * abs(r1.y);
//         r1.z = r1.z * r1.z;
//         r9.z = abs(r1.y) * r1.z;
//         r9.y = r9.z * r0.y;
//         r9.x = 1;
//         r9.xyz = r1.xxx ? r9.xyz : 0;
//         r10.xyzw = cb0[8].zwzw * float4(-1,0,-1,1) + r3.xyxy;
//         r10.xyzw = min(r10.xyzw, r8.xyzw);
//         r10.xyzw = max(r10.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r10.xy, 0).x;
//         r1.y = 1 + -r0.y;
//         r0.y = r0.x ? r1.y : r0.y;
//         r1.y = cmp(r0.y < r3.z);
//         r1.z = r3.z + -r0.y;
//         r1.z = r1.z / r3.z;
//         r1.z = 2 + -r1.z;
//         r3.w = abs(r1.z) * abs(r1.z);
//         r3.w = r3.w * r3.w;
//         r4.y = r3.w * abs(r1.z);
//         r11.y = r0.y * r4.y + r9.y;
//         r11.z = abs(r1.z) * r3.w + r9.z;
//         r11.x = r1.x ? 2 : 1;
//         r1.xyz = r1.yyy ? r11.xyz : r9.xyz;
//         r0.y = t2.SampleLevel(s0_s, r10.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = cb0[8].zwzw * float4(0,-1,0,1) + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r4.yz = min(r8.zw, r3.xy);
//         r4.yz = max(r4.yz, r7.xy);
//         r0.y = t2.SampleLevel(s0_s, r4.yz, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = cb0[8].zwzw * float4(1,-1,1,0) + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r4.yz = cb0[8].zw + r3.xy;
//         r4.yz = min(r4.yz, r8.xy);
//         r4.yz = max(r4.yz, r7.xy);
//         r0.y = t2.SampleLevel(s0_s, r4.yz, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r9.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r6.zwzw;
//         r9.xyzw = r9.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r9.xyzw = min(r9.xyzw, r8.xyzw);
//         r9.xyzw = max(r9.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r9.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r10.y = r0.y * r5.x + r1.y;
//         r10.z = abs(r4.y) * r4.z + r1.z;
//         r10.x = 1 + r1.x;
//         r1.xyz = r3.www ? r10.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r9.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r9.y = r0.y * r5.x + r1.y;
//         r9.z = abs(r4.y) * r4.z + r1.z;
//         r9.x = 1 + r1.x;
//         r1.xyz = r3.www ? r9.xyz : r1.xyz;
//         r6.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r6.xyzw;
//         r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//         r6.xyzw = min(r6.xyzw, r8.xyzw);
//         r6.xyzw = max(r6.xyzw, r7.xyzw);
//         r0.y = t2.SampleLevel(s0_s, r6.xy, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r7.y = r0.y * r5.x + r1.y;
//         r7.z = abs(r4.y) * r4.z + r1.z;
//         r7.x = 1 + r1.x;
//         r1.xyz = r3.www ? r7.xyz : r1.xyz;
//         r0.y = t2.SampleLevel(s0_s, r6.zw, 0).x;
//         r3.w = 1 + -r0.y;
//         r0.y = r0.x ? r3.w : r0.y;
//         r3.w = cmp(r0.y < r3.z);
//         r4.y = r3.z + -r0.y;
//         r4.y = r4.y / r3.z;
//         r4.y = 2 + -r4.y;
//         r4.z = abs(r4.y) * abs(r4.y);
//         r4.z = r4.z * r4.z;
//         r5.x = abs(r4.y) * r4.z;
//         r6.y = r0.y * r5.x + r1.y;
//         r6.z = abs(r4.y) * r4.z + r1.z;
//         r6.x = 1 + r1.x;
//         r1.xyz = r3.www ? r6.xyz : r1.xyz;
//         r0.y = cmp(r1.x == 0.000000);
//         if (r0.y != 0) {
//           r1.x = 1;
//         }
//         if (r0.y == 0) {
//           r6.z = r1.y / r1.z;
//           r0.y = (uint)r1.w << 2;
//           r6.xy = r3.xy * float2(2,-2) + float2(-1,1);
//           r6.w = 1;
//           r1.y = dot(r6.xyzw, cb0[r0.y+13].xyzw);
//           r0.y = dot(r6.xyzw, cb0[r0.y+14].xyzw);
//           r0.y = r1.y / r0.y;
//           r0.y = cb0[r1.w+80].x + r0.y;
//           r1.yz = cb0[r1.w+60].zw * cb0[86].xx;
//           r0.y = -r0.y * cb0[r1.w+80].y + r0.w;
//           r0.y = min(cb0[85].w, r0.y);
//           r0.y = r0.y / cb0[85].z;
//           r4.yz = -cb0[r1.w+60].zw * cb0[86].xx + cb0[r1.w+60].zw;
//           r1.yz = r0.yy * r4.yz + r1.yz;
//           r3.w = cmp(cb0[85].x == 1.000000);
//           if (r3.w != 0) {
//             r0.w = cb0[r1.w+60].x / r0.w;
//             r1.yz = r1.yz * r0.ww;
//           }
//           r6.xyzw = cb0[87].wwww * r1.yzyz;
//           r5.xyzw = -r6.xyzw * r5.zwzw + r1.yzyz;
//           if (r1.w == 0) {
//             r6.xyzw = cb0[r1.w+64].xyxy * r5.zwzw;
//             r7.xyzw = float4(-7.19990158,-8.57973289,-2.58234143,-6.14066792) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r0.w = r0.y / cb0[86].z;
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(-0.520550013,-0.845854998,-0.751770973,-0.65545398) + r3.xyxy;
//             r9.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].xyxy;
//             r10.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].zwzw;
//             r10.xyzw = cb0[r1.w+68].xyxy + r10.xyzw;
//             r8.xyzw = min(r10.xyzw, r8.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r1.y = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r1.z = 1 + -r1.y;
//             r1.y = r0.x ? r1.z : r1.y;
//             r1.y = r3.z + -r1.y;
//             r1.z = cb0[84].z * r3.z;
//             r1.y = cmp(r1.z < r1.y);
//             r1.y = r1.y ? 0 : 1;
//             r3.w = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r4.y = 1 + -r3.w;
//             r3.w = r0.x ? r4.y : r3.w;
//             r3.w = r3.z + -r3.w;
//             r3.w = cmp(r1.z < r3.w);
//             r3.w = r3.w ? 0 : 1;
//             r8.xyzw = r6.zwzw * float4(-0.678021014,-0.483969986,-0.854924977,-0.490873992) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r4.y = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r4.z = 1 + -r4.y;
//             r4.y = r0.x ? r4.z : r4.y;
//             r4.y = -r4.y + r3.z;
//             r4.y = cmp(r1.z < r4.y);
//             r4.y = r4.y ? 0 : 1;
//             r4.y = r4.y * r7.z;
//             r1.y = r1.y * r7.x + r4.y;
//             r4.y = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r4.z = 1 + -r4.y;
//             r4.y = r0.x ? r4.z : r4.y;
//             r4.y = -r4.y + r3.z;
//             r4.y = cmp(r1.z < r4.y);
//             r4.y = r4.y ? 0 : 1;
//             r4.y = r4.y * r7.w;
//             r3.w = r3.w * r7.y + r4.y;
//             r4.yz = r7.xy + r7.zw;
//             r7.xyzw = float4(-2.31478643,-2.89526725,-3.05039549,-3.99175406) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(-0.792430997,0.102303997,-0.761083007,0.412304997) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(-0.516156971,0.711853027,-0.700168014,0.622896016) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             r4.yz = r4.yz + r7.zw;
//             r7.xyzw = float4(-1.64231598,-3.31069326,-1.56545961,-0.724846363) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(-0.355834007,-0.579065979,-0.233941004,-0.868254006) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(-0.490482002,-0.444795996,-0.319092005,-0.232715994) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             r4.yz = r4.yz + r7.zw;
//             r7.xyzw = float4(-1.00778794,-1.02969921,-1.71244168,-6.18136501) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(-0.27345401,0.421808004,-0.400938004,0.315499991) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(-0.27500701,0.638119996,-0.458970994,0.872913003) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             r4.yz = r4.yz + r7.zw;
//             r7.xyzw = float4(-5.08163738,-5.33022404,-0.879165471,-0.595332325) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(0.0997809991,-0.965326011,0.334973991,-0.915804029) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(0.0777480006,-0.449645996,0.156904995,-0.299495995) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             r4.yz = r4.yz + r7.zw;
//             r7.xyzw = float4(-0.82670176,-0.270535439,-6.51378965,-6.9205637) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(0.211989,0.381204009,0.0867429972,0.147351995) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(0.0479819998,0.987891972,0.26492399,0.955706) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             r4.yz = r4.yz + r7.zw;
//             r7.xyzw = float4(-6.2543025,-6.55701685,-8.89246655,-1.43309534) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(0.736899972,-0.656467974,0.891682982,-0.42868799) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(0.996095002,-0.0599219985,0.508179009,0.371794999) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             r4.yz = r4.yz + r7.zw;
//             r7.xyzw = float4(-3.67072701,-7.83593607,-7.05661964,-5.62808418) * cb0[86].yyyy;
//             r7.xyzw = exp2(r7.xyzw);
//             r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//             r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//             r8.xyzw = r6.zwzw * float4(0.799534023,0.458108991,0.757354975,0.646281004) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r1.y = r8.x * r7.x + r1.y;
//             r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r8.y = 1 + -r8.x;
//             r8.x = r0.x ? r8.y : r8.x;
//             r8.x = -r8.x + r3.z;
//             r8.x = cmp(r1.z < r8.x);
//             r8.x = r8.x ? 0 : 1;
//             r3.w = r8.x * r7.y + r3.w;
//             r4.yz = r7.xy + r4.yz;
//             r8.xyzw = r6.zwzw * float4(0.618847013,0.775925994,-0.945554972,-0.256700009) + r3.xyxy;
//             r8.xyzw = min(r8.xyzw, r10.xyzw);
//             r8.xyzw = max(r8.xyzw, r9.xyzw);
//             r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r1.y = r7.x * r7.z + r1.y;
//             x12[0].x = r1.y;
//             r4.yz = r4.yz + r7.zw;
//             x13[0].x = r4.y;
//             r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//             r7.y = 1 + -r7.x;
//             r7.x = r0.x ? r7.y : r7.x;
//             r7.x = -r7.x + r3.z;
//             r7.x = cmp(r1.z < r7.x);
//             r7.x = r7.x ? 0 : 1;
//             r3.w = r7.x * r7.w + r3.w;
//             x12[1].x = r3.w;
//             x13[1].x = r4.z;
//             r7.x = r1.y / r4.y;
//             r7.y = r3.w / r4.z;
//             r7.x = r7.x + -r7.y;
//             r7.x = cmp(cb0[86].w >= abs(r7.x));
//             if (r7.x == 0) {
//               r8.xyzw = float4(-2.85802603,-1.79378712,-2.96656418,-2.51360893) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(-0.787473977,-0.350791991,-0.570385993,0.425458014) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(-0.834991992,0.251581013,-0.497132003,-0.658249021) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-2.37573552,-1.10526347,-0.803203702,-0.611408174) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(-0.324059993,-0.739427984,-0.322221011,-0.42730999) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(-0.413078994,-0.107845001,-0.175731003,0.297403991) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-0.954242408,-2.72319531,-1.61956906,-3.85246587) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(-0.0721649975,0.478475988,-0.261705011,0.807196975) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(-0.401924998,0.541754007,0.457625985,-0.810500979) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-2.32574606,-0.932220578,-0.230742186,-1.12492311) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(0.48141101,-0.639600992,0.29273501,-0.375277996) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(0.00913599972,-0.147521004,0.498174995,0.212167993) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-0.845245004,-2.5714314,-1.46358633,-2.53469944) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(0.341248989,0.283086985,0.458700001,0.693847001) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(0.0123859998,0.637288988,0.712020993,-0.421494007) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-1.67824161,-3.67468786,-2.04183936,-2.8455503) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(0.514874995,-0.455642998,0.876284003,0.285730004) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(0.677064002,0.338901997,0.604615986,0.612818003) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-2.93084764,-2.16161823,-1.42879498,-4.45605373) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(-0.865207016,-0.0796170011,-0.75324899,-0.188573003) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(-0.594054997,0.205390006,-0.951743007,0.0716859996) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               r4.yz = r4.yz + r8.zw;
//               r8.xyzw = float4(-1.51467049,-1.3593787,-0.454479277,-0.786625087) * cb0[86].yyyy;
//               r8.xyzw = exp2(r8.xyzw);
//               r11.xyzw = float4(1,1,1,1) + -r8.xyzw;
//               r8.xyzw = r0.wwww * r11.xyzw + r8.xyzw;
//               r11.xyzw = r6.zwzw * float4(-0.205326006,-0.616743028,-0.0480279997,-0.608357012) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.x + r1.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.y + r3.w;
//               r4.yz = r8.xy + r4.yz;
//               r11.xyzw = r6.zwzw * float4(-0.265305996,-0.051332999,-0.0958250016,-0.409231991) + r3.xyxy;
//               r11.xyzw = min(r11.xyzw, r10.xyzw);
//               r11.xyzw = max(r11.xyzw, r9.xyzw);
//               r7.y = t0.SampleLevel(s0_s, r11.xy, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r1.y = r7.y * r8.z + r1.y;
//               x12[0].x = r1.y;
//               r4.yz = r4.yz + r8.zw;
//               x13[0].x = r4.y;
//               r7.y = t0.SampleLevel(s0_s, r11.zw, 0).x;
//               r7.z = 1 + -r7.y;
//               r7.y = r0.x ? r7.z : r7.y;
//               r7.y = -r7.y + r3.z;
//               r7.y = cmp(r1.z < r7.y);
//               r7.y = r7.y ? 0 : 1;
//               r3.w = r7.y * r8.w + r3.w;
//               x12[1].x = r3.w;
//               x13[1].x = r4.z;
//               r1.y = r1.y / r4.y;
//               r3.w = r3.w / r4.z;
//               r1.y = -r3.w + r1.y;
//               r1.y = cmp(cb0[86].w >= abs(r1.y));
//               r1.y = (int)r7.x | (int)r1.y;
//             } else {
//               r1.y = -1;
//             }
//             if (r1.y == 0) {
//               r7.xyzw = float4(-0.454922915,-0.488759756,-3.00368571,-2.19938278) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.0163199995,0.269957989,-0.249026,0.143399) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r1.y = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r3.w = 1 + -r1.y;
//               r1.y = r0.x ? r3.w : r1.y;
//               r1.y = r3.z + -r1.y;
//               r1.y = cmp(r1.z < r1.y);
//               r1.y = r1.y ? 0 : 1;
//               r3.w = x12[0].x;
//               r1.y = r1.y * r7.x + r3.w;
//               r3.w = x13[0].x;
//               r3.w = r3.w + r7.x;
//               r4.y = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r4.z = 1 + -r4.y;
//               r4.y = r0.x ? r4.z : r4.y;
//               r4.y = -r4.y + r3.z;
//               r4.y = cmp(r1.z < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.z = x12[1].x;
//               r4.y = r4.y * r7.y + r4.z;
//               r4.z = x13[1].x;
//               r4.z = r4.z + r7.y;
//               r8.xyzw = r6.zwzw * float4(-0.0774020031,0.871890008,0.320827007,-0.713452995) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-2.64347386,-0.213732481,-0.532696843,-0.526722968) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.176208004,-0.821267009,0.137686998,-0.00162400003) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r3.w = r7.x + r3.w;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.x = 1 + -r7.x;
//               r7.x = r0.x ? r8.x : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.y + r4.y;
//               r4.z = r7.y + r4.z;
//               r8.xyzw = r6.zwzw * float4(0.300395012,-0.0712909997,0.273250997,0.137443006) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-0.841880858,-2.84530139,-4.22661066,-3.85716414) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.438787997,0.0538850017,0.126561999,0.851496994) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r3.w = r7.x + r3.w;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.x = 1 + -r7.x;
//               r7.x = r0.x ? r8.x : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.y + r4.y;
//               r4.z = r7.y + r4.z;
//               r8.xyzw = r6.zwzw * float4(0.421608001,0.847508013,0.893172979,-0.262668014) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-2.67585087,-2.05042386,-3.10861135,-1.78108454) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.837432027,-0.101071998,0.734522998,0.189551994) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r3.w = r7.x + r3.w;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.x = 1 + -r7.x;
//               r7.x = r0.x ? r8.x : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.y + r4.y;
//               r4.z = r7.y + r4.z;
//               r8.xyzw = r6.zwzw * float4(0.880797029,0.075943999,-0.708419979,-0.0295349993) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-1.43741608,-2.96929407,-0.427928865,-0.981528997) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.555553973,-0.298718989,-0.0457589999,-0.871110022) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r3.w = r7.x + r3.w;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.x = 1 + -r7.x;
//               r7.x = r0.x ? r8.x : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.y + r4.y;
//               r4.z = r7.y + r4.z;
//               r8.xyzw = r6.zwzw * float4(-0.138754994,-0.215933993,-0.488584995,0.069881998) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-0.183740988,-1.48677206,-1.46949327,-0.856197476) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.112209998,0.0413400009,0.138922006,-0.628008008) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r3.w = r7.x + r3.w;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.x = 1 + -r7.x;
//               r7.x = r0.x ? r8.x : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.y + r4.y;
//               r4.z = r7.y + r4.z;
//               r8.xyzw = r6.zwzw * float4(0.317339987,-0.554506004,0.375212997,-0.244038999) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-1.73866272,-1.12745857,-1.98774683,-1.30496395) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.256567001,0.651664972,0.135181993,0.525159001) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r3.w = r7.x + r3.w;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.x = 1 + -r7.x;
//               r7.x = r0.x ? r8.x : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.y + r4.y;
//               r4.z = r7.y + r4.z;
//               r8.xyzw = r6.zwzw * float4(0.701910973,-0.258121997,0.549497008,-0.228906006) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r3.w = r3.w + r7.z;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r4.y = r7.x * r7.w + r4.y;
//               r4.z = r4.z + r7.w;
//               r7.xyzw = float4(-1.35949278,-1.30440199,-1.39065552,-1.56391883) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.605768025,0.0740789995,-0.582759023,-0.120619997) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r0.w = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.x = 1 + -r0.w;
//               r0.w = r0.x ? r8.x : r0.w;
//               r0.w = r3.z + -r0.w;
//               r0.w = cmp(r1.z < r0.w);
//               r0.w = r0.w ? 0 : 1;
//               r0.w = r0.w * r7.x + r1.y;
//               r1.y = r7.x + r3.w;
//               r3.w = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.x = 1 + -r3.w;
//               r3.w = r0.x ? r7.x : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.z < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r3.w = r3.w * r7.y + r4.y;
//               r4.y = r7.y + r4.z;
//               r6.xyzw = r6.xyzw * float4(0.351929009,0.508746028,0.653662026,-0.103266999) + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r10.xyzw);
//               r6.xyzw = max(r6.xyzw, r9.xyzw);
//               r4.z = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r6.x = 1 + -r4.z;
//               r4.z = r0.x ? r6.x : r4.z;
//               r4.z = -r4.z + r3.z;
//               r4.z = cmp(r1.z < r4.z);
//               r4.z = r4.z ? 0 : 1;
//               r0.w = r4.z * r7.z + r0.w;
//               x12[0].x = r0.w;
//               r0.w = r1.y + r7.z;
//               x13[0].x = r0.w;
//               r0.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r1.y = 1 + -r0.w;
//               r0.w = r0.x ? r1.y : r0.w;
//               r0.w = r3.z + -r0.w;
//               r0.w = cmp(r1.z < r0.w);
//               r0.w = r0.w ? 0 : 1;
//               r0.w = r0.w * r7.w + r3.w;
//               x12[1].x = r0.w;
//               r0.w = r4.y + r7.w;
//               x13[1].x = r0.w;
//             }
//             r0.w = x12[0].x;
//             r1.y = x12[1].x;
//             r0.w = r1.y + r0.w;
//             r1.y = x13[0].x;
//             r1.z = x13[1].x;
//             r1.y = r1.y + r1.z;
//             r1.x = r0.w / r1.y;
//           } else {
//             r0.w = cmp((int)r1.w == 1);
//             if (r0.w != 0) {
//               r6.xyzw = cb0[65].xyxy * r5.zwzw;
//               r7.xyzw = float4(-4.3113637,-3.52627683,-1.25792563,-1.55836809) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r0.w = r0.y / cb0[86].z;
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.554247022,-0.771111012,-0.739494026,-0.535812974) + r3.xyxy;
//               r9.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[69].xyxy;
//               r10.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[69].zwzw;
//               r10.xyzw = cb0[69].xyxy + r10.xyzw;
//               r8.xyzw = min(r10.xyzw, r8.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r1.y = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r1.z = 1 + -r1.y;
//               r1.y = r0.x ? r1.z : r1.y;
//               r1.y = r3.z + -r1.y;
//               r1.z = cb0[84].z * r3.z;
//               r1.y = cmp(r1.z < r1.y);
//               r1.y = r1.y ? 0 : 1;
//               r3.w = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.z < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r8.xyzw = r6.zwzw * float4(-0.581834972,-0.00485200016,-0.617420018,-0.234534994) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r4.y = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r4.z = 1 + -r4.y;
//               r4.y = r0.x ? r4.z : r4.y;
//               r4.y = -r4.y + r3.z;
//               r4.y = cmp(r1.z < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r7.z;
//               r1.y = r1.y * r7.x + r4.y;
//               r4.y = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r4.z = 1 + -r4.y;
//               r4.y = r0.x ? r4.z : r4.y;
//               r4.y = -r4.y + r3.z;
//               r4.y = cmp(r1.z < r4.y);
//               r4.y = r4.y ? 0 : 1;
//               r4.y = r4.y * r7.w;
//               r3.w = r3.w * r7.y + r4.y;
//               r4.yz = r7.xy + r7.zw;
//               r7.xyzw = float4(-1.93653631,-2.47095561,-4.55345392,-2.5002408) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.681692004,0.28470701,-0.812982976,0.104160003) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(-0.607105017,0.847590983,-0.601184011,0.562425971) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               r4.yz = r4.yz + r7.zw;
//               r7.xyzw = float4(-4.74890566,-2.08656836,-0.674442112,-0.563664019) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.0234689992,-0.962522984,-0.123935997,-0.754447997) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(-0.00485200016,-0.373394012,-0.183568999,-0.266274005) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               r4.yz = r4.yz + r7.zw;
//               r7.xyzw = float4(-0.901273072,-0.22848022,-2.20538688,-5.67105389) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(-0.061067,0.460554987,-0.0859099999,0.118625) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(-0.221655995,0.751151979,-0.275979012,0.981567025) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               r4.yz = r4.yz + r7.zw;
//               r7.xyzw = float4(-2.09949541,-4.05256033,-0.993613303,-1.25950646) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.404157013,-0.651479006,0.320596993,-0.883358002) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(0.465559989,-0.176183,0.410443008,-0.413067997) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               r4.yz = r4.yz + r7.zw;
//               r7.xyzw = float4(-0.814901173,-0.939830005,-1.95053983,-3.42842364) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.41355601,0.123324998,0.353556991,0.322733015) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(0.492659986,0.553879976,0.266579002,0.867061019) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               r4.yz = r4.yz + r7.zw;
//               r7.xyzw = float4(-2.98889518,-2.22883439,-6.2499094,-2.74358654) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.933348,-0.629809976,0.863582015,-0.852289975) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(0.920530021,-0.355693012,0.849300027,-0.0485550016) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               r4.yz = r4.yz + r7.zw;
//               r7.xyzw = float4(-4.86857986,-2.09602141,-3.33378029,-2.11065435) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//               r8.xyzw = r6.zwzw * float4(0.952939987,0.156895995,0.691030979,0.330729008) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r1.y = r8.x * r7.x + r1.y;
//               r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r8.y = 1 + -r8.x;
//               r8.x = r0.x ? r8.y : r8.x;
//               r8.x = -r8.x + r3.z;
//               r8.x = cmp(r1.z < r8.x);
//               r8.x = r8.x ? 0 : 1;
//               r3.w = r8.x * r7.y + r3.w;
//               r4.yz = r7.xy + r4.yz;
//               r8.xyzw = r6.zwzw * float4(0.898068011,0.633777976,0.89062202,0.85058099) + r3.xyxy;
//               r8.xyzw = min(r8.xyzw, r10.xyzw);
//               r8.xyzw = max(r8.xyzw, r9.xyzw);
//               r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r1.y = r7.x * r7.z + r1.y;
//               x14[0].x = r1.y;
//               r4.yz = r4.yz + r7.zw;
//               x15[0].x = r4.y;
//               r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//               r7.y = 1 + -r7.x;
//               r7.x = r0.x ? r7.y : r7.x;
//               r7.x = -r7.x + r3.z;
//               r7.x = cmp(r1.z < r7.x);
//               r7.x = r7.x ? 0 : 1;
//               r3.w = r7.x * r7.w + r3.w;
//               x14[1].x = r3.w;
//               x15[1].x = r4.z;
//               r7.x = r1.y / r4.y;
//               r7.y = r3.w / r4.z;
//               r7.x = r7.x + -r7.y;
//               r7.x = cmp(cb0[86].w < abs(r7.x));
//               if (r7.x != 0) {
//                 r7.xyzw = float4(-3.34006596,-2.93286467,-3.71318436,-7.90314722) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(-0.786126018,-0.767632008,-0.822138011,-0.281655014) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(-0.918942988,-0.0941499993,-0.934812009,0.366741002) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-1.96691215,-3.77197456,-2.41739202,-3.47431779) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(-0.835200012,0.93780297,-0.873225987,0.623889983) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(-0.341594011,-0.73754102,-0.483383,-0.976927996) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-1.07460284,-0.362947851,-0.6956411,-0.6932621) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(-0.204932004,-0.483565986,-0.214393005,-0.0592360012) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(-0.230811,0.305094004,-0.367534012,0.102450997) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-1.64544106,-1.18442786,-1.92146969,-0.611149013) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(-0.353130013,0.581529975,0.18186,-0.529649019) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(0.0877410024,-0.730765998,0.188207999,-0.289528996) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-0.137389123,-0.362524211,-0.549391091,-1.37142503) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(0.0359809995,-0.0834069997,0.212927997,0.0635090023) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(0.145970002,0.28104499,0.236609995,0.566026986) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-2.062181,-3.34212351,-4.83358812,-2.24719357) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(0.0213319995,0.760246992,0.637135029,-0.637623012) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(0.535875022,-0.885555983,0.686330974,-0.389934987) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-1.73362195,-1.39554238,-2.12258387,-5.77069855) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(0.677236021,-0.174291,0.61589402,0.0703449994) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r8.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r1.y = r8.x * r7.x + r1.y;
//                 r8.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.y = 1 + -r8.x;
//                 r8.x = r0.x ? r8.y : r8.x;
//                 r8.x = -r8.x + r3.z;
//                 r8.x = cmp(r1.z < r8.x);
//                 r8.x = r8.x ? 0 : 1;
//                 r3.w = r8.x * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r8.xyzw = r6.zwzw * float4(0.715628982,0.999939024,0.676259995,0.711600006) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r7.x = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r1.y = r7.x * r7.z + r1.y;
//                 r7.x = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r7.y = 1 + -r7.x;
//                 r7.x = r0.x ? r7.y : r7.x;
//                 r7.x = -r7.x + r3.z;
//                 r7.x = cmp(r1.z < r7.x);
//                 r7.x = r7.x ? 0 : 1;
//                 r3.w = r7.x * r7.w + r3.w;
//                 r4.yz = r4.yz + r7.zw;
//                 r7.xyzw = float4(-0.851650417,-1.39399922,-1.21719301,-6.31343699) * cb0[86].yyyy;
//                 r7.xyzw = exp2(r7.xyzw);
//                 r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//                 r7.xyzw = r0.wwww * r8.xyzw + r7.xyzw;
//                 r8.xyzw = r6.zwzw * float4(-0.409772009,-0.175695002,-0.476669014,-0.395671993) + r3.xyxy;
//                 r8.xyzw = min(r8.xyzw, r10.xyzw);
//                 r8.xyzw = max(r8.xyzw, r9.xyzw);
//                 r0.w = t0.SampleLevel(s0_s, r8.xy, 0).x;
//                 r8.x = 1 + -r0.w;
//                 r0.w = r0.x ? r8.x : r0.w;
//                 r0.w = r3.z + -r0.w;
//                 r0.w = cmp(r1.z < r0.w);
//                 r0.w = r0.w ? 0 : 1;
//                 r0.w = r0.w * r7.x + r1.y;
//                 r1.y = t0.SampleLevel(s0_s, r8.zw, 0).x;
//                 r8.x = 1 + -r1.y;
//                 r1.y = r0.x ? r8.x : r1.y;
//                 r1.y = r3.z + -r1.y;
//                 r1.y = cmp(r1.z < r1.y);
//                 r1.y = r1.y ? 0 : 1;
//                 r1.y = r1.y * r7.y + r3.w;
//                 r4.yz = r7.xy + r4.yz;
//                 r6.xyzw = r6.xyzw * float4(-0.439801991,0.362406999,0.506332994,0.876887977) + r3.xyxy;
//                 r6.xyzw = min(r6.xyzw, r10.xyzw);
//                 r6.xyzw = max(r6.xyzw, r9.xyzw);
//                 r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//                 r6.x = 1 + -r3.w;
//                 r3.w = r0.x ? r6.x : r3.w;
//                 r3.w = r3.z + -r3.w;
//                 r3.w = cmp(r1.z < r3.w);
//                 r3.w = r3.w ? 0 : 1;
//                 r0.w = r3.w * r7.z + r0.w;
//                 x14[0].x = r0.w;
//                 r4.yz = r4.yz + r7.zw;
//                 x15[0].x = r4.y;
//                 r0.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//                 r3.w = 1 + -r0.w;
//                 r0.w = r0.x ? r3.w : r0.w;
//                 r0.w = r3.z + -r0.w;
//                 r0.w = cmp(r1.z < r0.w);
//                 r0.w = r0.w ? 0 : 1;
//                 r0.w = r0.w * r7.w + r1.y;
//                 x14[1].x = r0.w;
//                 x15[1].x = r4.z;
//               }
//               r0.w = x14[0].x;
//               r1.y = x14[1].x;
//               r0.w = r1.y + r0.w;
//               r1.y = x15[0].x;
//               r1.z = x15[1].x;
//               r1.y = r1.y + r1.z;
//               r1.x = r0.w / r1.y;
//             } else {
//               r6.xyzw = float4(-0.792473972,-0.779962003,-0.580859005,-0.208776996) * r5.zwzw;
//               r7.xyzw = float4(-3.15952015,-1.38548744,-6.94438553,-1.06862068) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r0.y = r0.y / cb0[86].z;
//               r8.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r8.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r8.xyzw = cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].xyxy;
//               r9.xyzw = -cb0[8].zwzw * float4(2,2,2,2) + cb0[r1.w+68].zwzw;
//               r9.xyzw = cb0[r1.w+68].xyxy + r9.xyzw;
//               r6.xyzw = min(r9.xyzw, r6.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r0.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r1.y = 1 + -r0.w;
//               r0.w = r0.x ? r1.y : r0.w;
//               r0.w = r3.z + -r0.w;
//               r1.y = cb0[84].z * r3.z;
//               r0.w = cmp(r1.y < r0.w);
//               r0.w = r0.w ? 0 : 1;
//               r1.z = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r3.w = 1 + -r1.z;
//               r1.z = r0.x ? r3.w : r1.z;
//               r1.z = r3.z + -r1.z;
//               r1.z = cmp(r1.y < r1.z);
//               r1.z = r1.z ? 0 : 1;
//               r1.z = r1.z * r7.y;
//               r0.w = r0.w * r7.x + r1.z;
//               r1.z = r7.x + r7.y;
//               r6.xyzw = float4(-0.920346975,-0.411419988,-0.515426993,0.0899989977) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(-0.614856005,0.386577994,-0.537949979,0.716665983) * r5.zwzw;
//               r7.xyzw = float4(-1.86925554,-3.26677227,-2.21088624,-3.31532168) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.x + r0.w;
//               r1.z = r7.x + r1.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.y + r0.w;
//               r1.z = r1.z + r7.y;
//               r6.xyzw = float4(-0.811945021,0.905210018,-0.139439002,-0.888668001) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(-0.454634011,-0.707938015,-0.146336004,-0.259193987) * r5.zwzw;
//               r7.xyzw = float4(-2.65607238,-0.509738743,-0.396726757,-1.48935831) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.x + r0.w;
//               r1.z = r7.x + r1.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.y + r0.w;
//               r1.z = r1.z + r7.y;
//               r6.xyzw = float4(-0.211218998,0.114840999,-0.261146992,0.588487983) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(-0.420942008,0.991271973,0.359171987,-0.633717) * r5.zwzw;
//               r7.xyzw = float4(-3.70001292,-1.88057292,-6.43597031,-1.00797105) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.x + r0.w;
//               r1.z = r7.x + r1.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.y + r0.w;
//               r1.z = r1.z + r7.y;
//               r6.xyzw = float4(0.169468999,-0.997253001,0.435712993,-0.250831991) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(0.320596993,0.291054994,0.125584006,0.0469070002) * r5.zwzw;
//               r7.xyzw = float4(-0.81859833,-0.207658067,-1.42133641,-1.874704) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.x + r0.w;
//               r1.z = r7.x + r1.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.y + r0.w;
//               r1.z = r1.z + r7.y;
//               r6.xyzw = float4(0.0380569994,0.625477016,0.872004986,-0.926999986) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(0.743156016,-0.505173028,0.736442029,-0.189733997) * r5.zwzw;
//               r7.xyzw = float4(-3.30185962,-2.0618453,-3.57361269,-1.25295591) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.x + r0.w;
//               r1.z = r7.x + r1.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.y + r0.w;
//               r1.z = r1.z + r7.y;
//               r6.xyzw = float4(0.843562007,0.357035995,0.568589985,0.116549999) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(0.86541301,0.763725996,0.545763016,0.730216026) * r5.zwzw;
//               r7.xyzw = float4(-2.69696546,-3.50032997,-5.50587749,-3.47976851) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.x + r0.w;
//               r1.z = r7.x + r1.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.y + r0.w;
//               r1.z = r1.z + r7.y;
//               r6.xyzw = float4(-0.975401998,-0.0711390004,-0.883907974,0.217871994) * r5.zwzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r3.w = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.z + r0.w;
//               r1.z = r1.z + r7.z;
//               r3.w = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r4.y = 1 + -r3.w;
//               r3.w = r0.x ? r4.y : r3.w;
//               r3.w = r3.z + -r3.w;
//               r3.w = cmp(r1.y < r3.w);
//               r3.w = r3.w ? 0 : 1;
//               r0.w = r3.w * r7.w + r0.w;
//               r1.z = r1.z + r7.w;
//               r6.xyzw = float4(-0.884518027,0.568041027,0.0625929981,-0.508530021) * r5.zwzw;
//               r7.xyzw = float4(-4.2874279,-1.03613436,-0.570473433,-4.38599825) * cb0[86].yyyy;
//               r7.xyzw = exp2(r7.xyzw);
//               r10.xyzw = float4(1,1,1,1) + -r7.xyzw;
//               r7.xyzw = r0.yyyy * r10.xyzw + r7.xyzw;
//               r6.xyzw = r6.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r6.xyzw = min(r6.xyzw, r9.xyzw);
//               r6.xyzw = max(r6.xyzw, r8.xyzw);
//               r0.y = t0.SampleLevel(s0_s, r6.xy, 0).x;
//               r3.w = 1 + -r0.y;
//               r0.y = r0.x ? r3.w : r0.y;
//               r0.y = r3.z + -r0.y;
//               r0.y = cmp(r1.y < r0.y);
//               r0.y = r0.y ? 0 : 1;
//               r0.y = r0.y * r7.x + r0.w;
//               r0.w = r7.x + r1.z;
//               r1.z = t0.SampleLevel(s0_s, r6.zw, 0).x;
//               r3.w = 1 + -r1.z;
//               r1.z = r0.x ? r3.w : r1.z;
//               r1.z = r3.z + -r1.z;
//               r1.z = cmp(r1.y < r1.z);
//               r1.z = r1.z ? 0 : 1;
//               r0.y = r1.z * r7.y + r0.y;
//               r0.w = r0.w + r7.y;
//               r5.xyzw = float4(0.0116889998,0.326395005,0.507797003,-0.916562021) * r5.xyzw;
//               r5.xyzw = r5.xyzw * cb0[r1.w+64].xyxy + r3.xyxy;
//               r5.xyzw = min(r5.xyzw, r9.xyzw);
//               r5.xyzw = max(r5.xyzw, r8.xyzw);
//               r1.z = t0.SampleLevel(s0_s, r5.xy, 0).x;
//               r1.w = 1 + -r1.z;
//               r1.z = r0.x ? r1.w : r1.z;
//               r1.z = r3.z + -r1.z;
//               r1.z = cmp(r1.y < r1.z);
//               r1.z = r1.z ? 0 : 1;
//               r0.y = r1.z * r7.z + r0.y;
//               r0.w = r0.w + r7.z;
//               r1.z = t0.SampleLevel(s0_s, r5.zw, 0).x;
//               r1.w = 1 + -r1.z;
//               r0.x = r0.x ? r1.w : r1.z;
//               r0.x = r3.z + -r0.x;
//               r0.x = cmp(r1.y < r0.x);
//               r0.x = r0.x ? 0 : 1;
//               r0.x = r0.x * r7.w + r0.y;
//               r0.y = r0.w + r7.w;
//               r1.x = r0.x / r0.y;
//             }
//           }
//         }
//         r0.x = r1.x + -r4.w;
//         r0.x = r4.x * r0.x + r4.w;
//         r0.y = cmp(cb0[10].w == 1.000000);
//         if (r0.y != 0) {
//           r1.x = dot(r2.xyzw, cb0[31].xyzw);
//           r1.y = dot(r2.xyzw, cb0[32].xyzw);
//           r1.z = dot(r2.xyzw, cb0[33].xyzw);
//           r0.y = dot(r2.xyzw, cb0[34].xyzw);
//           r1.xyz = r1.xyz / r0.yyy;
//           r1.xyz = cb0[9].xyz + -r1.xyz;
//           r1.xyz = cb0[9].www * r1.xyz;
//           r0.y = dot(r1.xyz, r1.xyz);
//           r0.y = sqrt(r0.y);
//           r0.y = r0.y * cb0[10].x + cb0[10].y;
//           r0.y = max(0, r0.y);
//           r0.y = -r0.y * r0.y + 1;
//           r0.y = max(0, r0.y);
//           r0.y = log2(r0.y);
//           r0.y = cb0[10].z * r0.y;
//           r0.y = exp2(r0.y);
//           r0.w = -1 + r0.x;
//           r0.x = r0.y * r0.w + 1;
//         }
//         r0.y = 1 + -r0.x;
//         r0.z = cb0[85].y * r0.y + r0.x;
//       }
//     }
//   } else {
//     r0.z = 1;
//   }
//   o0.xyz = r0.zzz;
//   o0.w = 1;
//   return;
// }
//////////////////////////////// HLSL Errors ////////////////////////////////
// E:\GOG\Dying Light\ShaderFixes\2a61b76948fb493b-ps_replace.txt(104,27-29): error X3004: undeclared identifier 'nan'
// E:\GOG\Dying Light\ShaderFixes\2a61b76948fb493b-ps_replace.txt(104,13-30): error X3014: incorrect number of arguments to numeric-type constructor
/////////////////////////////////////////////////////////////////////////////
