    ps_3_0//1
    def c0, 9.99999975e-006, 190, 0.150000006, 1
    def c1, 0.00392156886, 0.0078125, 0.5, 0.001953125
    def c2, 8, 4, 32, 1
    def c3, 0, 1, 6.80000019, 64
    def c4, 2, 0.5, 10, 1
    def c5, 0, 0.333000004, -1, 0.5
    def c6, 0.0700000003, 0.5, 0.0799999982, 0.5
    def c7, 0.699999988, 4.30000019, 1.29999995, 1
    def c191, 0.949999988, 0.0199999996, 0, 0
    def c192, 0, 0, 0, 9.99999975e-006
    def c193, 0, 0, 1, 1
    def c194, 1, 0, 0.0199999996, 0.699999988
    def c195, 2, 0.0299999993, 10, 4
    def c196, 0.00999999978, 100, 1, 0.0700000003
    def c210, 0, 0.75, 0, 0
    dcl_texcoord v0.xy
    dcl_texcoord1 v1.xyz
    dcl_texcoord3 v2.xyz
    dcl_color v3
    dcl_texcoord7 v4.xy
    dcl_2d s0
    dcl_2d s1
    dcl_2d s2
    dcl_2d s3
    mov r10.w, c5.w
    mov r9.xyz, v1.xyzz
    mov r9.y, -r9.y
    mad r10.xyz, r9.xyzz, r10.w, r10.w
    texld r11, r10, s3
    add r9.w, r9.z, c194.w
    mul_sat r9.w, r9.w, c194.z
    mul r11, r11, r9.w
    texld r0, v0, s0
    add r1.xyz, c0.x, v1
    dp3 r1.w, r1, r1
    rsq r1.w, r1.w
    mul r2.xyz, r1, r1.w
    texld r3, v0, s2
    mul r2.w, r3.w, c81.x
    mul r2.w, r2.w, c0.y
    dp3 r3.x, r3, c77
    mul r3.x, r3.x, c81.x
    mul r3.x, r3.x, c0.z
    mul r0.xyz, r0, c66
    mul r0.x, r0.x, c210.y
    mul r0.y, r0.y, c210.y
    mul r0.z, r0.z, c210.y
    dp3 r3.y, v3, c82
    mov r8.x, c73.x
    max r4.x, v3.x, v3.y
    max r4.x, r4.x, v3.z
    mul r3.y, r3.y, r4.x
    mul oC2.z, r3.y, c39.z
    mov r4.xyz, c3
    cmp r3.y, -r8.x, r4.x, r4.y
    if_ne r3.y, -r3.y
      texld r5, v4, s1
      mul r3.y, r5.x, r8.x
      mov r3.w, c0.w
      mad r6.x, r5.x, -r8.x, r3.w
      lrp r6.yzw, r3.y, c74.xxyz, r0.xxyz
      mad r7, r0.xxyz, c3.xyyy, c3.yxxx
      cmp r5, -r5.x, r7, r6
      mov r0.xyz, r5.yzww
    else
      mov r5.x, c0.w
    endif
    mul r3.y, r3.x, r5.x
    mul r3.z, r4.z, c78.x
    mov r5.yz, c0
    mul r3.w, r5.y, c75.x
    rcp r3.w, r3.w
    mul r3.w, r2.w, r3.w
    mul r4.z, r5.z, c76.x
    rcp r4.z, r4.z
    mul r3.x, r3.x, r4.z
    mul r3.z, r3.z, r3.w
    mul r3.w, c79.x, c79.x
    mul r3.x, r3.x, r3.w
    add r5.xyz, c0.x, v2
    nrm r6.xyz, r5
    mov r10, c202
    dp3 r10.w, r10, v1
    mul r10.xyz, v1, r10.w
    mul r10.xyz, r10, c4.x
    add r11.xyz, c202, -r10
    nrm r10.xyz, r11
    mov r9.xy, r10.xyyy
    mov r9.z, c192.w
    nrm r8.xyz, r9.xyzz
    mov r9.w, -r10.z
    mov r10.w, c5.w
    mad r9.w, r9.w, r10.w, r10.w
    pow r9.w, r9.w, c194.w
    mul r9.xy, r8, r9.w
    mov r9.y, -r9.y
    mad r10.xy, r9.xyyy, r10.w, r10.w
    texld r8, r10, s3
    mul r5.xyz, r3.x, c80
    dp3 r3.x, -r6, r2
    add r3.x, r3.x, r3.x
    mad r2.xyz, r2, -r3.x, -r6
    dp3 r2.x, -c17, r2
    max r3.x, r2.x, c3.x
    pow r2.x, r3.x, r3.z
    mad r2.xyz, r5, r2.x, r0
    cmp r11.xyz, -c79.x, r0, r2
    add_sat r11.xyz, r11, c191.y
    mul oC0.xyz, r11, c191.x
    mul r0.x, r3.y, c72.w
    mul r0.y, r2.w, c72.w
    mad r1.xyz, r1, r1.w, c0.w
    mul r2.xyz, r1, c3.w
    frc r3.xyz, r2
    mad r1.xyz, r1, c3.w, -r2
    mul r1.xyz, r1, c2.xxyw
    frc r3.xyz, r1
    add r1.xyz, r1, -r3
    dp3 r0.z, r1.yxzw, c2.yzww
    mul oC1.w, r0.z, c1.x
    mul oC1.xyz, r2, c1.y
    mov r8.w, c0.w
    mov r9.w, c0.w
    mov r9.xyz, v1
    dp3 r8.x, r9, c200
    dp3 r8.y, r9, c201
    dp3 r8.z, r9, c202
    nrm r9, r8
    abs r9, r9.z
    pow r8, r9.x, c198.z
    mov r11.x, c198.x
    mov r11.y, c198.y
    lrp r9.x, r8.x, r11.x, r11.y
    mul_sat oC2.x, r0.x, r9.x
    mul r0.x, r0.y, c1.w
    mul r0.x, r0.x, c198.w
    rsq r0.x, r0.x
    rcp oC2.y, r0.x
    mul oC0.w, r0.w, c39.x
    mov oC2.w, c0.w
    mul oC3, r4.yxxx, c52.x

// approximately 130 instruction slots used (5 texture, 125 arithmetic)
 