//Fog GS. Volumetric lighting. stereo.w check disabled.
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.198 on Sat Jul 11 11:43:54 2026
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                10   xyzw        0     NONE   float   xyzw
// TEXCOORD                11   xyzw        1     NONE   float   xyzw
// PRIMITIVE_ID             0   x           2     NONE    uint   x
// ATTRIBUTE                0   xy          3     NONE   float   xy
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                10   xyzw        0     NONE   float   xyzw
// TEXCOORD                11   xyzw        1     NONE   float   xyzw
// PRIMITIVE_ID             0   x           2     NONE    uint   x
// SV_RenderTargetArrayIndex     0    y          2  RTINDEX    uint    y
// SV_POSITION              0   xyzw        3      POS   float   xyzw
//
gs_5_0
dcl_resource_buffer (float,float,float,float) t125
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[2], immediateIndexed
dcl_constantbuffer CB1[75], immediateIndexed
dcl_constantbuffer CB2[15], immediateIndexed
dcl_resource_structured t0, 16
dcl_input v[3][0].xyzw
dcl_input v[3][1].xyzw
dcl_input v[3][2].x
dcl_input v[3][3].xy
dcl_temps 14
dcl_inputprimitive triangle
dcl_stream m0
dcl_outputtopology trianglestrip
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.x
dcl_output_siv o2.y, rendertarget_array_index
dcl_output_siv o3.xyzw, position
dcl_maxout 24
ld_indexable(buffer)(float,float,float,float) r13.xyzw, l(0, 0, 0, 0), t125.xyzw

mov r13.w, l(1.0)

ftoi r0.x, cb2[13].z
imul null, r0.y, l(36), v[0][2].x
imad r0.z, v[0][2].x, l(36), l(5)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r1.xyzw, r0.z, l(0), t0.xyzw
add r1.xyz, r1.xyzx, cb1[74].xyzx
mul r0.z, r1.y, cb1[17].z
mad r0.z, r1.x, cb1[16].z, r0.z
mad r0.z, r1.z, cb1[18].z, r0.z
add r0.z, r0.z, cb1[19].z
add r0.w, r1.w, r0.z
mad r0.w, r0.w, cb2[14].x, cb2[14].y
log r0.w, r0.w
mul r0.w, r0.w, cb2[14].z
ftoi r0.w, r0.w
add r1.x, -r1.w, r0.z
mad r1.x, r1.x, cb2[14].x, cb2[14].y
log r1.x, r1.x
mul r1.x, r1.x, cb2[14].z
ftoi r1.x, r1.x
imax r1.y, r1.x, l(0)
ishl r1.z, cb0[1].x, l(3)
iadd r1.y, r1.z, r1.y
ilt r1.x, r1.x, r0.x
ige r1.z, r0.w, r1.y
and r1.x, r1.z, r1.x
ige r1.z, r0.w, l(0)
and r1.x, r1.z, r1.x
if_nz r1.x
  imad r1.xz, v[0][2].xxxx, l(36, 0, 36, 0), l(23, 0, 24, 0)
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r2.xyz, r1.x, l(0), t0.xyzx
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r3.xyz, r1.z, l(0), t0.xyzx
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r4.xyz, r0.y, l(0), t0.xyzx
  imad r1.xz, v[0][2].xxxx, l(36, 0, 36, 0), l(1, 0, 3, 0)
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r5.xyz, r1.x, l(0), t0.xyzx
  imad r0.y, v[0][2].x, l(36), l(2)
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r6.xyz, r0.y, l(0), t0.xyzx
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r7.xyw, r1.z, l(0), t0.xyxz
  iadd r0.x, r0.x, l(-1)
  imin r0.x, r0.x, r0.w
  iadd r0.y, r1.y, l(7)
  imin r0.x, r0.y, r0.x
  mov r2.w, l(1.000000)
  mov r8.x, r4.x
  mov r8.y, r5.x
  mov r8.z, r6.x
  mov r8.w, r7.x
  dp4 r9.x, r2.xyzw, r8.xyzw
  mov r10.x, r4.y
  mov r10.y, r5.y
  mov r10.z, r6.y
  mov r10.w, r7.y
  dp4 r9.y, r2.xyzw, r10.xyzw
  mov r7.x, r4.z
  mov r7.y, r5.z
  mov r7.z, r6.z
  dp4 r9.z, r2.xyzw, r7.xyzw
  add r4.xyz, r9.xyzx, cb1[74].xyzx
  mul r0.yw, r4.yyyy, cb1[17].xxxy
  mad r0.yw, r4.xxxx, cb1[16].xxxy, r0.yyyw
  mad r0.yw, r4.zzzz, cb1[18].xxxy, r0.yyyw
  add r0.yw, r0.yyyw, cb1[19].xxxy
  min r1.xz, r0.yywy, l(10000000.000000, 0.000000, 10000000.000000, 0.000000)
  max r0.yw, r0.yyyw, l(0.000000, -10000000.000000, 0.000000, -10000000.000000)
  add r4.xyz, -r2.xyzx, r3.xyzx
  mad r5.xyz, r4.xyzx, l(1.000000, 0.000000, 0.000000, 0.000000), r2.xyzx
  mov r5.w, l(1.000000)
  dp4 r6.x, r5.xyzw, r8.xyzw
  dp4 r6.y, r5.xyzw, r10.xyzw
  dp4 r6.z, r5.xyzw, r7.xyzw
  add r5.xyz, r6.xyzx, cb1[74].xyzx
  mul r5.yw, r5.yyyy, cb1[17].xxxy
  mad r5.xy, r5.xxxx, cb1[16].xyxx, r5.ywyy
  mad r5.xy, r5.zzzz, cb1[18].xyxx, r5.xyxx
  add r5.xy, r5.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r5.xxyx
  max r0.yw, r0.yyyw, r5.xxxy
  mad r5.xyz, r4.xyzx, l(0.000000, 1.000000, 0.000000, 0.000000), r2.xyzx
  mov r5.w, l(1.000000)
  dp4 r6.x, r5.xyzw, r8.xyzw
  dp4 r6.y, r5.xyzw, r10.xyzw
  dp4 r6.z, r5.xyzw, r7.xyzw
  add r5.xyz, r6.xyzx, cb1[74].xyzx
  mul r5.yw, r5.yyyy, cb1[17].xxxy
  mad r5.xy, r5.xxxx, cb1[16].xyxx, r5.ywyy
  mad r5.xy, r5.zzzz, cb1[18].xyxx, r5.xyxx
  add r5.xy, r5.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r5.xxyx
  max r0.yw, r0.yyyw, r5.xxxy
  mad r5.xyz, r4.xyzx, l(1.000000, 1.000000, 0.000000, 0.000000), r2.xyzx
  mov r5.w, l(1.000000)
  dp4 r6.x, r5.xyzw, r8.xyzw
  dp4 r6.y, r5.xyzw, r10.xyzw
  dp4 r6.z, r5.xyzw, r7.xyzw
  add r5.xyz, r6.xyzx, cb1[74].xyzx
  mul r5.yw, r5.yyyy, cb1[17].xxxy
  mad r5.xy, r5.xxxx, cb1[16].xyxx, r5.ywyy
  mad r5.xy, r5.zzzz, cb1[18].xyxx, r5.xyxx
  add r5.xy, r5.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r5.xxyx
  max r0.yw, r0.yyyw, r5.xxxy
  mad r5.xyz, r4.xyzx, l(0.000000, 0.000000, 1.000000, 0.000000), r2.xyzx
  mov r5.w, l(1.000000)
  dp4 r6.x, r5.xyzw, r8.xyzw
  dp4 r6.y, r5.xyzw, r10.xyzw
  dp4 r6.z, r5.xyzw, r7.xyzw
  add r5.xyz, r6.xyzx, cb1[74].xyzx
  mul r5.yw, r5.yyyy, cb1[17].xxxy
  mad r5.xy, r5.xxxx, cb1[16].xyxx, r5.ywyy
  mad r5.xy, r5.zzzz, cb1[18].xyxx, r5.xyxx
  add r5.xy, r5.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r5.xxyx
  max r0.yw, r0.yyyw, r5.xxxy
  mad r5.xyz, r4.xyzx, l(1.000000, 0.000000, 1.000000, 0.000000), r2.xyzx
  mov r5.w, l(1.000000)
  dp4 r6.x, r5.xyzw, r8.xyzw
  dp4 r6.y, r5.xyzw, r10.xyzw
  dp4 r6.z, r5.xyzw, r7.xyzw
  add r5.xyz, r6.xyzx, cb1[74].xyzx
  mul r5.yw, r5.yyyy, cb1[17].xxxy
  mad r5.xy, r5.xxxx, cb1[16].xyxx, r5.ywyy
  mad r5.xy, r5.zzzz, cb1[18].xyxx, r5.xyxx
  add r5.xy, r5.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r5.xxyx
  max r0.yw, r0.yyyw, r5.xxxy
  mad r2.xyz, r4.xyzx, l(0.000000, 1.000000, 1.000000, 0.000000), r2.xyzx
  mov r2.w, l(1.000000)
  dp4 r4.x, r2.xyzw, r8.xyzw
  dp4 r4.y, r2.xyzw, r10.xyzw
  dp4 r4.z, r2.xyzw, r7.xyzw
  add r2.xyz, r4.xyzx, cb1[74].xyzx
  mul r2.yw, r2.yyyy, cb1[17].xxxy
  mad r2.xy, r2.xxxx, cb1[16].xyxx, r2.ywyy
  mad r2.xy, r2.zzzz, cb1[18].xyxx, r2.xyxx
  add r2.xy, r2.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r2.xxyx
  max r0.yw, r0.yyyw, r2.xxxy
  mov r3.w, l(1.000000)
  dp4 r2.x, r3.xyzw, r8.xyzw
  dp4 r2.y, r3.xyzw, r10.xyzw
  dp4 r2.z, r3.xyzw, r7.xyzw
  add r2.xyz, r2.xyzx, cb1[74].xyzx
  mul r2.yw, r2.yyyy, cb1[17].xxxy
  mad r2.xy, r2.xxxx, cb1[16].xyxx, r2.ywyy
  mad r2.xy, r2.zzzz, cb1[18].xyxx, r2.xyxx
  add r2.xy, r2.xyxx, cb1[19].xyxx
  min r1.xz, r1.xxzx, r2.xxyx
  max r0.yw, r0.yyyw, r2.xxxy
  eq r2.x, r1.w, l(0.000000)
  add r0.yw, -r1.xxxz, r0.yyyw
  mad r2.yz, r0.yywy, v[0][3].xxyx, r1.xxzx
  mad r3.xy, r0.ywyy, v[1][3].xyxx, r1.xzxx
  mad r0.yw, r0.yyyw, v[2][3].xxxy, r1.xxxz
  mul r4.xyzw, r2.zzzz, cb2[8].xyzw
  mad r4.xyzw, r2.yyyy, cb2[7].xyzw, r4.xyzw
  mul r5.xyzw, r3.yyyy, cb2[8].xyzw
  mad r3.xyzw, r3.xxxx, cb2[7].xyzw, r5.xyzw
  mul r5.xyzw, r0.wwww, cb2[8].xyzw
  mad r5.xyzw, r0.yyyy, cb2[7].xyzw, r5.xyzw
  mov r0.y, r1.y
  loop
    ilt r0.w, r0.x, r0.y
    breakc_nz r0.w
    itof r0.w, r0.y
    add r0.w, r0.w, cb2[11].z
    div r0.w, r0.w, cb2[14].z
    exp r0.w, r0.w
    add r0.w, r0.w, -cb2[14].y
    div r0.w, r0.w, cb2[14].x
    add r1.x, -r0.z, r0.w
    ge r1.x, r1.w, |r1.x|
    or r1.x, r1.x, r2.x
    if_nz r1.x
      mad r6.xyzw, r0.wwww, cb2[9].xyzw, r4.xyzw
      add r6.xyzw, r6.xyzw, cb2[10].xyzw
      mov o0.xyzw, v[0][0].xyzw
      mov o1.xyzw, v[0][1].xyzw
      mov o2.x, v[0][2].x
      mov r11.xyzw, r6.xyzw
      mov o2.y, r0.y
      add r12.x, -r13.y, r11.w
      mul r12.y, r13.x, r13.w
      mad r12.x, r12.x, r12.y, r11.x
      ne r12.y, l(1.000000), r11.w
      movc r11.x, r12.y, r12.x, r11.x
      mov o3.xyzw, r11.xyzw
      emit_stream m0
      mad r6.xyzw, r0.wwww, cb2[9].xyzw, r3.xyzw
      add r6.xyzw, r6.xyzw, cb2[10].xyzw
      mov o0.xyzw, v[1][0].xyzw
      mov o1.xyzw, v[1][1].xyzw
      mov o2.x, v[1][2].x
      mov r11.xyzw, r6.xyzw
      mov o2.y, r0.y
      add r12.x, -r13.y, r11.w
      mul r12.y, r13.x, r13.w
      mad r12.x, r12.x, r12.y, r11.x
      ne r12.y, l(1.000000), r11.w
      movc r11.x, r12.y, r12.x, r11.x
      mov o3.xyzw, r11.xyzw
      emit_stream m0
      mad r6.xyzw, r0.wwww, cb2[9].xyzw, r5.xyzw
      add r6.xyzw, r6.xyzw, cb2[10].xyzw
      mov o0.xyzw, v[2][0].xyzw
      mov o1.xyzw, v[2][1].xyzw
      mov o2.x, v[2][2].x
      mov r11.xyzw, r6.xyzw
      mov o2.y, r0.y
      add r12.x, -r13.y, r11.w
      mul r12.y, r13.x, r13.w
      mad r12.x, r12.x, r12.y, r11.x
      ne r12.y, l(1.000000), r11.w
      movc r11.x, r12.y, r12.x, r11.x
      mov o3.xyzw, r11.xyzw
      emit_stream m0
      cut_stream m0
    endif
    iadd r0.y, r0.y, l(1)
  endloop
endif
ret
// Approximately 0 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with geo-11 v0.6.198 on Sat Jul 11 11:43:54 2026
// struct t0_t {
//   float val[4];
// };
// StructuredBuffer<t0_t> t0 : register(t0);
//
// cbuffer cb2 : register(b2)
// {
//   float4 cb2[15];
// }
//
// cbuffer cb1 : register(b1)
// {
//   float4 cb1[75];
// }
//
// cbuffer cb0 : register(b0)
// {
//   float4 cb0[2];
// }
//
//
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Buffer<float4> StereoParams : register(t125);
//
//
// [maxvertexcount(24)]
// void main(
//   inout TriangleStream<float> m0,
//   float4 v0 : TEXCOORD10,
//   float4 v1 : TEXCOORD11,
//   uint v2 : PRIMITIVE_ID0,
//   float2 v3 : ATTRIBUTE0,
//   out float4 o0 : TEXCOORD10,
//   out float4 o1 : TEXCOORD11,
//   out uint o2 : PRIMITIVE_ID0,
//   out uint p2 : SV_RenderTargetArrayIndex0,
//   out float4 o3 : SV_POSITION0)
// {
//   float4 r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
// // Needs manual fix for instruction:
// // unknown dcl_: dcl_inputprimitive triangle
// // Needs manual fix for instruction:  
// //dcl_stream m0
// // Needs manual fix for instruction:
// // unknown dcl_: dcl_outputtopology trianglestrip
//   r13.xyzw = StereoParams.Load(float4(0,0,0,0)).xyzw;
//   r0.x = (int)cb2[13].z;
//   r0.y = 36 * (int)v[0][2].x;
//   r0.z = mad((int)v[0][2].x, 36, 5);
//   r1.x = t0[r0.z].val[0/4];
//   r1.y = t0[r0.z].val[0/4+1];
//   r1.z = t0[r0.z].val[0/4+2];
//   r1.w = t0[r0.z].val[0/4+3];
//   r1.xyz = cb1[74].xyz + r1.xyz;
//   r0.z = cb1[17].z * r1.y;
//   r0.z = r1.x * cb1[16].z + r0.z;
//   r0.z = r1.z * cb1[18].z + r0.z;
//   r0.z = cb1[19].z + r0.z;
//   r0.w = r0.z + r1.w;
//   r0.w = r0.w * cb2[14].x + cb2[14].y;
//   r0.w = log2(r0.w);
//   r0.w = cb2[14].z * r0.w;
//   r0.w = (int)r0.w;
//   r1.x = r0.z + -r1.w;
//   r1.x = r1.x * cb2[14].x + cb2[14].y;
//   r1.x = log2(r1.x);
//   r1.x = cb2[14].z * r1.x;
//   r1.x = (int)r1.x;
//   r1.y = max(0, (int)r1.x);
//   r1.z = asuint(cb0[1].x) << 3;
//   r1.y = (int)r1.z + (int)r1.y;
//   r1.x = cmp((int)r1.x < (int)r0.x);
//   r1.z = cmp((int)r0.w >= (int)r1.y);
//   r1.x = r1.z ? r1.x : 0;
//   r1.z = cmp((int)r0.w >= 0);
//   r1.x = r1.z ? r1.x : 0;
//   if (r1.x != 0) {
//     r1.xz = mad((int2)v[0][2].xx, int2(36,36), int2(23,24));
//     r2.x = t0[r1.x].val[0/4];
//     r2.y = t0[r1.x].val[0/4+1];
//     r2.z = t0[r1.x].val[0/4+2];
//     r3.x = t0[r1.z].val[0/4];
//     r3.y = t0[r1.z].val[0/4+1];
//     r3.z = t0[r1.z].val[0/4+2];
//     r4.x = t0[r0.y].val[0/4];
//     r4.y = t0[r0.y].val[0/4+1];
//     r4.z = t0[r0.y].val[0/4+2];
//     r1.xz = mad((int2)v[0][2].xx, int2(36,36), int2(1,3));
//     r5.x = t0[r1.x].val[0/4];
//     r5.y = t0[r1.x].val[0/4+1];
//     r5.z = t0[r1.x].val[0/4+2];
//     r0.y = mad((int)v[0][2].x, 36, 2);
//     r6.x = t0[r0.y].val[0/4];
//     r6.y = t0[r0.y].val[0/4+1];
//     r6.z = t0[r0.y].val[0/4+2];
//     r7.x = t0[r1.z].val[0/4];
//     r7.y = t0[r1.z].val[0/4+1];
//     r7.w = t0[r1.z].val[0/4+2];
//     r0.x = (int)r0.x + -1;
//     r0.x = min((int)r0.w, (int)r0.x);
//     r0.y = (int)r1.y + 7;
//     r0.x = min((int)r0.x, (int)r0.y);
//     r2.w = 1;
//     r8.x = r4.x;
//     r8.y = r5.x;
//     r8.z = r6.x;
//     r8.w = r7.x;
//     r9.x = dot(r2.xyzw, r8.xyzw);
//     r10.x = r4.y;
//     r10.y = r5.y;
//     r10.z = r6.y;
//     r10.w = r7.y;
//     r9.y = dot(r2.xyzw, r10.xyzw);
//     r7.x = r4.z;
//     r7.y = r5.z;
//     r7.z = r6.z;
//     r9.z = dot(r2.xyzw, r7.xyzw);
//     r4.xyz = cb1[74].xyz + r9.xyz;
//     r0.yw = cb1[17].xy * r4.yy;
//     r0.yw = r4.xx * cb1[16].xy + r0.yw;
//     r0.yw = r4.zz * cb1[18].xy + r0.yw;
//     r0.yw = cb1[19].xy + r0.yw;
//     r1.xz = min(float2(10000000,10000000), r0.yw);
//     r0.yw = max(float2(-10000000,-10000000), r0.yw);
//     r4.xyz = r3.xyz + -r2.xyz;
//     r5.xyz = r4.xyz * float3(1,0,0) + r2.xyz;
//     r5.w = 1;
//     r6.x = dot(r5.xyzw, r8.xyzw);
//     r6.y = dot(r5.xyzw, r10.xyzw);
//     r6.z = dot(r5.xyzw, r7.xyzw);
//     r5.xyz = cb1[74].xyz + r6.xyz;
//     r5.yw = cb1[17].xy * r5.yy;
//     r5.xy = r5.xx * cb1[16].xy + r5.yw;
//     r5.xy = r5.zz * cb1[18].xy + r5.xy;
//     r5.xy = cb1[19].xy + r5.xy;
//     r1.xz = min(r5.xy, r1.xz);
//     r0.yw = max(r5.xy, r0.yw);
//     r5.xyz = r4.xyz * float3(0,1,0) + r2.xyz;
//     r5.w = 1;
//     r6.x = dot(r5.xyzw, r8.xyzw);
//     r6.y = dot(r5.xyzw, r10.xyzw);
//     r6.z = dot(r5.xyzw, r7.xyzw);
//     r5.xyz = cb1[74].xyz + r6.xyz;
//     r5.yw = cb1[17].xy * r5.yy;
//     r5.xy = r5.xx * cb1[16].xy + r5.yw;
//     r5.xy = r5.zz * cb1[18].xy + r5.xy;
//     r5.xy = cb1[19].xy + r5.xy;
//     r1.xz = min(r5.xy, r1.xz);
//     r0.yw = max(r5.xy, r0.yw);
//     r5.xyz = r4.xyz * float3(1,1,0) + r2.xyz;
//     r5.w = 1;
//     r6.x = dot(r5.xyzw, r8.xyzw);
//     r6.y = dot(r5.xyzw, r10.xyzw);
//     r6.z = dot(r5.xyzw, r7.xyzw);
//     r5.xyz = cb1[74].xyz + r6.xyz;
//     r5.yw = cb1[17].xy * r5.yy;
//     r5.xy = r5.xx * cb1[16].xy + r5.yw;
//     r5.xy = r5.zz * cb1[18].xy + r5.xy;
//     r5.xy = cb1[19].xy + r5.xy;
//     r1.xz = min(r5.xy, r1.xz);
//     r0.yw = max(r5.xy, r0.yw);
//     r5.xyz = r4.xyz * float3(0,0,1) + r2.xyz;
//     r5.w = 1;
//     r6.x = dot(r5.xyzw, r8.xyzw);
//     r6.y = dot(r5.xyzw, r10.xyzw);
//     r6.z = dot(r5.xyzw, r7.xyzw);
//     r5.xyz = cb1[74].xyz + r6.xyz;
//     r5.yw = cb1[17].xy * r5.yy;
//     r5.xy = r5.xx * cb1[16].xy + r5.yw;
//     r5.xy = r5.zz * cb1[18].xy + r5.xy;
//     r5.xy = cb1[19].xy + r5.xy;
//     r1.xz = min(r5.xy, r1.xz);
//     r0.yw = max(r5.xy, r0.yw);
//     r5.xyz = r4.xyz * float3(1,0,1) + r2.xyz;
//     r5.w = 1;
//     r6.x = dot(r5.xyzw, r8.xyzw);
//     r6.y = dot(r5.xyzw, r10.xyzw);
//     r6.z = dot(r5.xyzw, r7.xyzw);
//     r5.xyz = cb1[74].xyz + r6.xyz;
//     r5.yw = cb1[17].xy * r5.yy;
//     r5.xy = r5.xx * cb1[16].xy + r5.yw;
//     r5.xy = r5.zz * cb1[18].xy + r5.xy;
//     r5.xy = cb1[19].xy + r5.xy;
//     r1.xz = min(r5.xy, r1.xz);
//     r0.yw = max(r5.xy, r0.yw);
//     r2.xyz = r4.xyz * float3(0,1,1) + r2.xyz;
//     r2.w = 1;
//     r4.x = dot(r2.xyzw, r8.xyzw);
//     r4.y = dot(r2.xyzw, r10.xyzw);
//     r4.z = dot(r2.xyzw, r7.xyzw);
//     r2.xyz = cb1[74].xyz + r4.xyz;
//     r2.yw = cb1[17].xy * r2.yy;
//     r2.xy = r2.xx * cb1[16].xy + r2.yw;
//     r2.xy = r2.zz * cb1[18].xy + r2.xy;
//     r2.xy = cb1[19].xy + r2.xy;
//     r1.xz = min(r2.xy, r1.xz);
//     r0.yw = max(r2.xy, r0.yw);
//     r3.w = 1;
//     r2.x = dot(r3.xyzw, r8.xyzw);
//     r2.y = dot(r3.xyzw, r10.xyzw);
//     r2.z = dot(r3.xyzw, r7.xyzw);
//     r2.xyz = cb1[74].xyz + r2.xyz;
//     r2.yw = cb1[17].xy * r2.yy;
//     r2.xy = r2.xx * cb1[16].xy + r2.yw;
//     r2.xy = r2.zz * cb1[18].xy + r2.xy;
//     r2.xy = cb1[19].xy + r2.xy;
//     r1.xz = min(r2.xy, r1.xz);
//     r0.yw = max(r2.xy, r0.yw);
//     r2.x = cmp(r1.w == 0.000000);
//     r0.yw = r0.yw + -r1.xz;
//     r2.yz = r0.yw * v[0][3].xy + r1.xz;
//     r3.xy = r0.yw * v[1][3].xy + r1.xz;
//     r0.yw = r0.yw * v[2][3].xy + r1.xz;
//     r4.xyzw = cb2[8].xyzw * r2.zzzz;
//     r4.xyzw = r2.yyyy * cb2[7].xyzw + r4.xyzw;
//     r5.xyzw = cb2[8].xyzw * r3.yyyy;
//     r3.xyzw = r3.xxxx * cb2[7].xyzw + r5.xyzw;
//     r5.xyzw = cb2[8].xyzw * r0.wwww;
//     r5.xyzw = r0.yyyy * cb2[7].xyzw + r5.xyzw;
//     r0.y = r1.y;
//     while (true) {
//       r0.w = cmp((int)r0.x < (int)r0.y);
//       if (r0.w != 0) break;
//       r0.w = (int)r0.y;
//       r0.w = cb2[11].z + r0.w;
//       r0.w = r0.w / cb2[14].z;
//       r0.w = exp2(r0.w);
//       r0.w = -cb2[14].y + r0.w;
//       r0.w = r0.w / cb2[14].x;
//       r1.x = r0.w + -r0.z;
//       r1.x = cmp(r1.w >= abs(r1.x));
//       r1.x = (int)r1.x | (int)r2.x;
//       if (r1.x != 0) {
//         r6.xyzw = r0.wwww * cb2[9].xyzw + r4.xyzw;
//         r6.xyzw = cb2[10].xyzw + r6.xyzw;
//         o0.xyzw = v[0][0].xyzw;
//         o1.xyzw = v[0][1].xyzw;
//         o2.x = v[0][2].x;
//         r11.xyzw = r6.xyzw;
//         p2.x = r0.y;
//         r12.x = r11.w + -r13.y;
//         r12.y = r13.w * r13.x;
//         r12.x = r12.x * r12.y + r11.x;
//         r12.y = cmp(1.000000 != r11.w);
//         r11.x = r12.y ? r12.x : r11.x;
//         o3.xyzw = r11.xyzw;
//       // Needs manual fix for instruction, maybe. 
// //            emit_stream m0
//       m0.Append(0);
//         r6.xyzw = r0.wwww * cb2[9].xyzw + r3.xyzw;
//         r6.xyzw = cb2[10].xyzw + r6.xyzw;
//         o0.xyzw = v[1][0].xyzw;
//         o1.xyzw = v[1][1].xyzw;
//         o2.x = v[1][2].x;
//         r11.xyzw = r6.xyzw;
//         p2.x = r0.y;
//         r12.x = r11.w + -r13.y;
//         r12.y = r13.w * r13.x;
//         r12.x = r12.x * r12.y + r11.x;
//         r12.y = cmp(1.000000 != r11.w);
//         r11.x = r12.y ? r12.x : r11.x;
//         o3.xyzw = r11.xyzw;
//       // Needs manual fix for instruction, maybe. 
// //            emit_stream m0
//       m0.Append(0);
//         r6.xyzw = r0.wwww * cb2[9].xyzw + r5.xyzw;
//         r6.xyzw = cb2[10].xyzw + r6.xyzw;
//         o0.xyzw = v[2][0].xyzw;
//         o1.xyzw = v[2][1].xyzw;
//         o2.x = v[2][2].x;
//         r11.xyzw = r6.xyzw;
//         p2.x = r0.y;
//         r12.x = r11.w + -r13.y;
//         r12.y = r13.w * r13.x;
//         r12.x = r12.x * r12.y + r11.x;
//         r12.y = cmp(1.000000 != r11.w);
//         r11.x = r12.y ? r12.x : r11.x;
//         o3.xyzw = r11.xyzw;
//       // Needs manual fix for instruction, maybe. 
// //            emit_stream m0
//       m0.Append(0);
//       // Needs manual fix for instruction, maybe. 
// //            cut_stream m0
//       m0.RestartStrip();
//       }
//       r0.y = (int)r0.y + 1;
//     }
//   }
//   return;
// }
//////////////////////////////// HLSL Errors ////////////////////////////////
// H:\SteamLibrary\steamapps\common\VisionsofMana\VisionsofMana\Binaries\Win64\ShaderFixes\cb7dfcf54911a497-gs_replace.txt(55,20): error X3004: undeclared identifier 'v'
/////////////////////////////////////////////////////////////////////////////
