//
// Generated by Microsoft (R) HLSL Shader Compiler 9.30.960.8229
//
//   using 3Dmigoto v1.2.69 on Tue May 01 13:12:51 2018
//
//
// Buffer Definitions: 
//
// cbuffer PER_FRAME
// {
//
//   float4 g_VS_WorldViewPos;          // Offset:   96 Size:    16
//   row_major float4x4 g_VS_FrustumPlaneEquation;// Offset:  224 Size:    64
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// PER_FRAME                         cbuffer      NA          NA    2        1
//
//
//
// Patch Constant signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_TessFactor            0   x           0  TRIEDGE   float   x   
// SV_TessFactor            1   x           1  TRIEDGE   float   x   
// SV_TessFactor            2   x           2  TRIEDGE   float   x   
// SV_InsideTessFactor      0   x           3   TRIINT   float   x   
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                 0   xyzw        0     NONE   float   xyzw
// TEXCOORD                 1   xyzw        1     NONE   float   xyzw
// TEXCOORD                 2   xyzw        2     NONE   float   xyzw
// TEXCOORD                 3   xyzw        3     NONE   float   xyzw
// TEXCOORD                 4   xyzw        4     NONE   float   xyzw
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                 0   xyzw        0     NONE   float   xyzw
// TEXCOORD                 1   xyzw        1     NONE   float   xyzw
// TEXCOORD                 2   xyzw        2     NONE   float   xyzw
// TEXCOORD                 3   xyzw        3     NONE   float   xyzw
// TEXCOORD                 4   xyzw        4     NONE   float   xyzw
//
// Tessellation Domain   # of control points
// -------------------- --------------------
// Triangle                                3
//
// Tessellation Output Primitive  Partitioning Type 
// ------------------------------ ------------------
// Clockwise Triangles            Odd Fractional    
//
hs_5_0
hs_decls 
dcl_input_control_point_count 3
dcl_output_control_point_count 3
dcl_tessellator_domain domain_tri
dcl_tessellator_partitioning partitioning_fractional_odd
dcl_tessellator_output_primitive output_triangle_cw
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb2[18], immediateIndexed
hs_fork_phase 
dcl_input vicp[3][2].xyz
dcl_output_siv o0.x, finalTriUeq0EdgeTessFactor
dcl_output_siv o1.x, finalTriVeq0EdgeTessFactor
dcl_output_siv o2.x, finalTriWeq0EdgeTessFactor
dcl_output_siv o3.x, finalTriInsideTessFactor
dcl_temps 5
add r0.xyz, cb2[6].xyzx, -vicp[0][2].xyzx
add r1.xyz, cb2[6].xyzx, -vicp[1][2].xyzx
add r2.xyz, cb2[6].xyzx, -vicp[2][2].xyzx
mov r0.w, l(1.000000)
dp4 r3.x, r0.xyzw, cb2[14].xyzw
mov r1.w, l(1.000000)
dp4 r3.y, r1.xyzw, cb2[14].xyzw
lt r3.xy, r3.xyxx, l(5.000000, 5.000000, 0.000000, 0.000000)
or r3.x, r3.y, r3.x
mov r2.w, l(1.000000)
dp4 r3.y, r2.xyzw, cb2[14].xyzw
lt r3.y, r3.y, l(5.000000)
dp4 r3.z, r0.xyzw, cb2[15].xyzw
dp4 r3.w, r1.xyzw, cb2[15].xyzw
lt r3.zw, r3.zzzw, l(0.000000, 0.000000, 5.000000, 5.000000)
or r3.xz, r3.yywy, r3.xxzx
dp4 r3.w, r2.xyzw, cb2[15].xyzw
lt r3.w, r3.w, l(5.000000)
or r3.y, r3.w, r3.z
dp4 r3.z, r0.xyzw, cb2[16].xyzw
dp4 r3.w, r1.xyzw, cb2[16].xyzw
lt r3.zw, r3.zzzw, l(0.000000, 0.000000, 5.000000, 5.000000)
or r3.z, r3.w, r3.z
dp4 r3.w, r2.xyzw, cb2[16].xyzw
lt r3.w, r3.w, l(5.000000)
or r4.x, r3.w, r3.z
dp4 r0.w, r0.xyzw, cb2[17].xyzw
lt r0.w, r0.w, l(5.000000)
dp4 r1.w, r1.xyzw, cb2[17].xyzw
lt r1.w, r1.w, l(5.000000)
or r0.w, r0.w, r1.w
dp4 r1.w, r2.xyzw, cb2[17].xyzw
lt r1.w, r1.w, l(5.000000)
or r4.y, r0.w, r1.w
and r3.xy, r3.xyxx, r4.xyxx
and r0.w, r3.y, r3.x
if_z r0.w
  mov o0.x, l(0)
  mov o1.x, l(0)
  mov o2.x, l(0)
  mov o3.x, l(0)
else 
  dp3 r0.w, vicp[0][2].xyzx, vicp[0][2].xyzx
  sqrt r0.w, r0.w
  dp3 r1.w, vicp[1][2].xyzx, vicp[1][2].xyzx
  sqrt r1.w, r1.w
  dp3 r2.w, vicp[2][2].xyzx, vicp[2][2].xyzx
  sqrt r2.w, r2.w
  max r0.w, r0.w, r1.w
  max r0.w, r2.w, r0.w
  mad r0.w, -r0.w, l(0.031250), l(1.000000)
  max r0.w, r0.w, l(0.250000)
  mul r0.w, r0.w, l(64.000000)
  add r3.xyz, -r1.xyzx, r2.xyzx
  dp3 r1.w, r3.xyzx, r3.xyzx
  sqrt r1.w, r1.w
  add r3.xyz, r1.xyzx, r2.xyzx
  mad r3.xyz, r3.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), -cb2[6].xyzx
  dp3 r2.w, r3.xyzx, r3.xyzx
  sqrt r2.w, r2.w
  div r3.x, r1.w, r2.w
  add r4.xyz, -r0.xyzx, r2.xyzx
  dp3 r1.w, r4.xyzx, r4.xyzx
  sqrt r1.w, r1.w
  add r2.xyz, r0.xyzx, r2.xyzx
  mad r2.xyz, r2.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), -cb2[6].xyzx
  dp3 r2.x, r2.xyzx, r2.xyzx
  sqrt r2.x, r2.x
  div r3.y, r1.w, r2.x
  add r2.xyz, r0.xyzx, -r1.xyzx
  dp3 r1.w, r2.xyzx, r2.xyzx
  sqrt r1.w, r1.w
  add r0.xyz, r0.xyzx, r1.xyzx
  mad r0.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), -cb2[6].xyzx
  dp3 r0.x, r0.xyzx, r0.xyzx
  sqrt r0.x, r0.x
  div r3.z, r1.w, r0.x
  max r0.x, r3.y, r3.x
  max r0.x, r3.z, r0.x
  min r0.x, r0.x, l(1.000000)
  mul r1.xyz, r0.wwww, r3.xyzx
  mul r0.x, r0.w, r0.x
  max r0.yzw, r1.xxyz, l(0.000000, 1.000000, 1.000000, 1.000000)
  min o0.x, r0.y, l(64.000000)
  min o1.x, r0.z, l(64.000000)
  min o2.x, r0.w, l(64.000000)
  max o3.x, r0.x, l(1.000000)
endif 
ret 
// Approximately 89 instruction slots used
